Bug Tracker

Opened 15 years ago

Closed 13 years ago

Last modified 11 years ago

#3443 closed bug (fixed)

Can't Select Attribute Values Containing Closing Square Bracket ]

Reported by: nickretallack Owned by:
Priority: major Milestone: 1.3
Component: docs Version: 1.2.6
Keywords: Cc:
Blocked by: Blocking:


Try it yourself. Add this element to a page: <input type="text" name="foo[bar]" />

Then try to select it by name: $('[name=foo[bar]]')

You get nothing, even if you try to escape it: $('[name=foo\[bar\]]'); $('[name=foo

Playing around a little more shows that it's just the closing square brackets that break it, since $("[name*=foo[bar]") works.

Clearly it's parsing the first ] it sees as the end of the attribute selector. Any chance you guys can beef up the parser to handle this special case?

Change History (6)

comment:2 Changed 15 years ago by posaune02

Resolution: invalid
Status: closedreopened

I have read the FAQ regarding this issue, and still I am experiencing this same defect. Granted, the following are both invalid and will not function as intended: $('[name=foo[bar]]'); and $('[name=foo\[bar\]]');

However, according to the FAQ, the following should work: $('[name=foo

It does not function as described in the FAQ.

comment:3 Changed 15 years ago by flesler

Component: selectordocs
Resolution: fixed
Status: reopenedclosed

Indeed, you're right.

Posted this here.


comment:4 Changed 13 years ago by omegasharp

Resolution: fixed
Status: closedreopened

$('input[name="foo[bar][blah]"]') works for both IE8 and FF3.5.8

However, I have a dropdown list, then: $('select[name="foo[bar][blah]"]') works for IE8 but not for FF3.5.8. Escape with
] does not work either. Also tried and not working in FF (since it's a select tag): $('[name="foo[bar][blah]"]')

comment:5 Changed 13 years ago by omegasharp

Sorry for the false alarm. It was other issues... Please close the ticket (delete my comments if possible).

comment:6 Changed 13 years ago by john

Resolution: fixed
Status: reopenedclosed
Note: See TracTickets for help on using tickets.