Skip to content
Permalink
Browse files

Added support for finding elements that have underscores in their nam…

…e (along with other allowed characters). Fix for ticket #1084.
  • Loading branch information
jeresig committed Apr 28, 2007
1 parent 610149f commit fce2bdf7ff1d5a293690c65de36a7824a50bc54f
Showing with 9 additions and 5 deletions.
  1. +2 −0 build/test/index.html
  2. +3 −3 src/selector/selector.js
  3. +4 −2 src/selector/selectorTest.js
@@ -85,6 +85,8 @@ <h2 id="userAgent"></h2>
<span id="utf8class2" class="台北"></span>
<span id="foo:bar" class="foo:bar"></span>
<span id="test.foo[5]bar" class="test.foo[5]bar"></span>

<foo_bar id="foobar">test element</foo_bar>
</form>
<b id="floatTest">Float test.</b>
<iframe id="iframe" name="iframe"></iframe>
@@ -80,7 +80,7 @@ jQuery.extend({

// Match: :even, :last-chlid, #id, .class
new RegExp("^([:.#]*)(" +
( jQuery.chars = "(?:[\\w\u0128-\uFFFF*-]|\\\\.)" ) + "+)")
( jQuery.chars = "(?:[\\w\u0128-\uFFFF*_-]|\\\\.)" ) + "+)")
],

token: [
@@ -152,7 +152,7 @@ jQuery.extend({

// An attempt at speeding up child selectors that
// point to a specific element tag
var re = /^[\/>]\s*([\w*-]+)/;
var re = new RegExp("^[/>]\\s*(" + jQuery.chars + "+)");
var m = re.exec(t);

if ( m ) {
@@ -207,7 +207,7 @@ jQuery.extend({

} else {
// Optomize for the case nodeName#idName
var re2 = new RegExp("^(\\w+)(#)(" + jQuery.chars + "+)");
var re2 = new RegExp("^(" + jQuery.chars + "+)(#)(" + jQuery.chars + "+)");
var m = re2.exec(t);

// Re-organize the results, so that they're consistent
@@ -1,7 +1,7 @@
module("selector");

test("element", function() {
expect(8);
expect(9);
ok( $("*").size() >= 30, "Select all" );
t( "Element Selector", "div", ["main","foo"] );
t( "Element Selector", "body", ["body"] );
@@ -11,6 +11,8 @@ test("element", function() {

ok( $("#length").length, '&lt;input name="length"&gt; cannot be found under IE, see #945' );
ok( $("#lengthtest input").length, '&lt;input name="length"&gt; cannot be found under IE, see #945' );

t( "Element Selector with underscore", "foo_bar", ["foobar"] );
});

test("broken", function() {
@@ -204,4 +206,4 @@ test("basic xpath", function() {
$("#foo").each(function() {
isSet( $("/p", this).get(), q("sndp", "en", "sap"), "Check XPath context" );
});
});
});

0 comments on commit fce2bdf

Please sign in to comment.
You can’t perform that action at this time.