Skip to content

[value=0] selector causes "property-based jQuery.fn.attr('value') is deprecated" #11

@JorisDebonnet

Description

@JorisDebonnet

I have to admit I'm not entirely sure this is a bug, but it feels like one.

I have this in my code:

object.siblings("[name=taskid]:not([value=0])")

Reasoning: I want to select the input with name 'taskid', but only if its value is not 0. There are also other siblings that are not inputs, but I expect it to filter first on [name=taskid] and then on :not([value=0]. And even if I say [value=0], I'd expect jQuery to only test the value attribute if it's actually present.

jQuery Migrate throws the property-based jQuery.fn.attr('value') is deprecated warning because of those non-input siblings. Is it right in doing so? It was quite confusing at least: I needed quite some time to finally figure out it was that selector causing the warning.

Actually I suppose jQuery Migrate can't really help it, because it's jQuery making the call from within its selector engine. If you say I should report this in the jQuery bugtracker, I'll go over there instead! I just came here first because I don't get any warnings, errors or unexpected behavior when jQuery Migrate is not running (alongside jQuery 1.9).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions