2016-08-19 4 views
0

HTMLOListElementオブジェクトから値を取得しようとしていますが、allwaysはundefinedを返します。JQuery.makeArray()HTMLOListElementから値を取得する

これは私の関数である:

$("#finish").click(function(){ 
    var elems = document.getElementById("selectable2"); 
    var arr = jQuery.makeArray(elems); 
    arr.reverse();    
    confirm("It will generate the group: " +groupname+ " with that users:" +arr+"."); 
}); 

selectable2 - これはjqueryの上のリストです。

は最後にオールウェイズ確認窓から同じことを得る:

それはグループを生成します。そのユーザーとexamplegroup:[オブジェクトHTMLOListElement]。

どうすればそのオブジェクトから値タグを取得できますか?

ありがとうございました。 Marc。

答えて

1

liのリストが必要な場合は、セレクタで$.makearray()に渡され、querySelectorAllとしてdocument.querySelectorAll("#selectable2 li")を使用できるように指定する必要があります。以下の例を確認してください。

これが役に立ちます。

$("#finish").click(function(){ 
 
    var groupname = "examplegroup"; 
 
    var elems = document.querySelectorAll("#selectable2 li"); 
 
    var arr = jQuery.makeArray(elems); 
 
    arr.reverse();   
 
    
 
    console.log(arr); 
 

 
    console.log("It will generate the group: " +groupname+ " with that users:" +arr+"."); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ol id="selectable2"> 
 
    <li>Item 1</li> 
 
    <li>Item 2</li> 
 
    <li>Item 3</li> 
 
</ol> 
 
<button id="finish">Finish</button>

+0

おかげザカリア!それは動作しますが、最後に私はこれに単純化しました: var users = []; \t \t \t \t \t $( "#1 selectable2李")各(関数(){ \t \t \t \t users.push($(この)の.text());} )。 –