X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fselector%2Fselector.js;h=6ad8e5cca8a85ffa46edf1e53969d3e82c459860;hb=7c6100f5ed840b49e8e0de1f9eb90ea2ef1c47ef;hp=472b4ab351f43a50832600e95fb24dedbba9b59a;hpb=74a8e206231162b005d95b667343678f786ae272;p=jquery.git diff --git a/src/selector/selector.js b/src/selector/selector.js index 472b4ab..6ad8e5c 100644 --- a/src/selector/selector.js +++ b/src/selector/selector.js @@ -56,9 +56,6 @@ jQuery.extend({ "$=": "z&&z.substr(z.length - m[4].length,m[4].length)==m[4]", "*=": "z&&z.indexOf(m[4])>=0", "": "z", - // these are for evaling in a regexp. - "=~": "eval(m[4]).test(z)", - "!~": "!eval(m[4]).test(z)", _resort: function(m){ return ["", m[1], m[3], m[2], m[5]]; }, @@ -70,7 +67,7 @@ jQuery.extend({ // The regular expressions that power the parsing engine parse: [ // Match: [@value='test'], [@foo] - /^\[ *(@)([\w-]+) *([!*$^=!~]*) *('?"?)(.*?)\4 *\]/, + /^\[ *(@)([\w-]+) *([!*$^=]*) *('?"?)(.*?)\4 *\]/, // Match: [div], [div p] /^(\[)\s*(.*?(\[.*?\])?[^[]*?)\s*\]/, @@ -232,7 +229,8 @@ jQuery.extend({ // Do a quick check for the existence of the actual ID attribute // to avoid selecting by the name attribute in IE - if ( (jQuery.browser.msie||jQuery.browser.opera) && oid && oid.id != m[2] ) + // also check to insure id is a string to avoid selecting an element with the name of 'id' inside a form + if ( (jQuery.browser.msie||jQuery.browser.opera) && oid && typeof oid.id == "string" && oid.id != m[2] ) oid = jQuery('[@id="'+m[2]+'"]', elem)[0]; // Do a quick check for node name (where applicable) so