2016-11-28 12 views
1

データ属性に同じタイプのJSONオブジェクトを割り当てた3つのボタン要素があります。私はそれらのオブジェクトを配列に入れることができると思いましたが、最初のマッチからオブジェクトを1つだけ取得します。ここでデータ属性から複数のjsonオブジェクトを収集する

は私のjQueryのです:

var configs = $("button[id*='alertbtn']").data('config'); 

私は私のセレクタ

$("button[id*='alertbtn']") 

が正しい三つの要素をターゲットにしていることを確認しました。

1行のコードを使用して欲しいものはどれですか?

答えて

1

ワンライン?はい。 1 関数呼び出し?特許:-)

var configs = $("button[id*='alertbtn']").map(function() { return $(this).data('config'); }).get(); 

より読み出し可能:

var configs = $("button[id*='alertbtn']") 
       .map(function() { return $(this).data('config'); }) 
       .get(); 

次いでget配列としてjQueryのセットの内容を取得するために、コンフィギュレーションオブジェクトのセットを取得するためにmapを使用します。


それはES2015にして、上記1つの読めるラインです:

let configs = Array.from($("button[id*='alertbtn']")).map(e = > $(e).data('config')); 
関連する問題