Side navigation
#8229 closed bug (invalid)
Opened February 10, 2011 09:42AM UTC
Closed February 10, 2011 01:27PM UTC
Last modified March 30, 2011 05:23PM UTC
jquery selecter not compatible with
Reported by: | fifsky@gmail.com | Owned by: | |
---|---|---|---|
Priority: | low | Milestone: | 1.next |
Component: | selector | Version: | 1.5 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
old jquery 1.4.2
$("#foo").find('input[name=test[]]'); is right;
new jquery 1.5.0 is error
must $("#foo").find("input[name='test[]']");
More rigorous, but cannot and front version compatible
Attachments (0)
Change History (7)
Changed February 10, 2011 01:27PM UTC by comment:1
_comment0: | Thanks for taking the time to contribute to the jQuery project by writing a bug report. \ \ As you didn't provide the test case required by the [http://docs.jquery.com/How_to_Report_Bugs bug reporting guidelines] I went ahead and made this one myself http://jsfiddle.net/jitter/njF8R/ . As you can see `input[name=test[]]` isn't a valid CSS selector and neither is it a valid selector in jQuery (if this worked in an earlier version then it was actually a bug that got fixed). So you should fix your code to use a valid selector. \ \ The documentation is also pretty clear about these kind of selectors: \ \ http://api.jquery.com/category/selectors/ \ > If you wish to use any of the meta-characters ( such as !"#$%&'()*+,./:;?@[\\]^`{|}~ ) as a literal part of a name, you must escape the character with two backslashes \ \ http://api.jquery.com/category/selectors/attribute-selectors/ \ > Attribute values in selector expressions must be surrounded by quotation marks. \ \ http://api.jquery.com/attribute-equals-selector/ \ > Quotes are mandatory. → 1297344530945654 |
---|---|
component: | unfiled → selector |
priority: | undecided → low |
resolution: | → invalid |
status: | new → closed |
Changed February 11, 2011 01:31AM UTC by comment:2
Replying to [comment:1 jitter]:
Thanks for taking the time to contribute to the jQuery project by writing a bug report. As you didn't provide the test case required by the bug reporting guidelines I went ahead and made this one myself http://jsfiddle.net/jitter/njF8R/ . As you can see input[name=test[]]
isn't a valid CSS selector and neither is it a valid selector in jQuery (if this worked in an earlier version then it was actually a bug that got fixed). So you should fix your code to use a valid selector. The documentation is also pretty clear about these kind of selectors: http://api.jquery.com/category/selectors/ > If you wish to use any of the meta-characters ( such as !"#$%&'()*+,./:;?@[\\]^`{|}~ ) as a literal part of a name, you must escape the character with two backslashes http://api.jquery.com/category/selectors/attribute-selectors/ > Attribute values in selector expressions must be surrounded by quotation marks. http://api.jquery.com/attribute-equals-selector/ > Quotes are mandatory. Basically a dupe of #8120
Thank your answer!O(∩_∩)O~
Thanks for taking the time to contribute to the jQuery project by writing a bug report.
As you didn't provide the test case required by the bug reporting guidelines I went ahead and made this one myself http://jsfiddle.net/jitter/njF8R/ . As you can see
input[name=test[]]
isn't a valid CSS selector and neither is it a valid selector in jQuery (if this worked in an earlier version then it was actually a bug that got fixed). So you should fix your code to use a valid selector.The documentation is also pretty clear about these kind of selectors:
http://api.jquery.com/category/selectors/
http://api.jquery.com/category/selectors/attribute-selectors/
http://api.jquery.com/attribute-equals-selector/
Basically a dupe of #8120