diff options
author | Scott González <scott.gonzalez@gmail.com> | 2017-05-02 12:42:49 -0400 |
---|---|---|
committer | Scott González <scott.gonzalez@gmail.com> | 2017-05-02 12:42:49 -0400 |
commit | adcf9b6f6ef9c6dfa88932b40307f581e65bc667 (patch) | |
tree | 70193bea919dab6e214f4deded4f9a0849a2ad40 | |
parent | 0d25a36eecb9e5598596208e4852b3c3fdbf5510 (diff) | |
download | jquery-ui-adcf9b6f6ef9c6dfa88932b40307f581e65bc667.tar.gz jquery-ui-adcf9b6f6ef9c6dfa88932b40307f581e65bc667.zip |
Labels: Handle empty sets
Fixes #15184
-rw-r--r-- | tests/unit/core/core.js | 4 | ||||
-rw-r--r-- | ui/labels.js | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/tests/unit/core/core.js b/tests/unit/core/core.js index 770ea4138..b5b6b3b81 100644 --- a/tests/unit/core/core.js +++ b/tests/unit/core/core.js @@ -142,7 +142,7 @@ QUnit.test( "uniqueId / removeUniqueId", function( assert ) { } ); QUnit.test( "Labels", function( assert ) { - assert.expect( 2 ); + assert.expect( 3 ); var expected = [ "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" ]; var dom = $( "#labels-fragment" ); @@ -165,6 +165,8 @@ QUnit.test( "Labels", function( assert ) { // Detach the dom to test on a fragment dom.detach(); testLabels( "document fragments" ); + + assert.equal( $().labels().length, 0, "No element" ); } ); ( function() { diff --git a/ui/labels.js b/ui/labels.js index 2a78d886b..1bf56ac41 100644 --- a/ui/labels.js +++ b/ui/labels.js @@ -27,6 +27,10 @@ return $.fn.labels = function() { var ancestor, selector, id, labels, ancestors; + if ( !this.length ) { + return this.pushStack( [] ); + } + // Check control.labels first if ( this[ 0 ].labels && this[ 0 ].labels.length ) { return this.pushStack( this[ 0 ].labels ); |