0

アイテムのリストを表示するモーダル フォームで、既に選択されているアイテムをマークしたいと考えています。ID の配列を提供する複数の要素を一度に選択する方法はありますか?

例:

$('.searchable').find('[role~=item]')

戻り値

<tr role=​"item character" data-id=​"1">​…​&lt;/tr>​
<tr role=​"item character" data-id=​"2">​…​&lt;/tr>​
<tr role=​"item character" data-id=​"3">​…​&lt;/tr>​
<tr role=​"item character" data-id=​"4">​…​&lt;/tr>​

しかし、すでに選択されているアイテムに「選択済み」クラスを追加してマークしたいと思います。選択したアイテムを配列で取得しました。例: 配列 = [1,3]

このようなことをする方法はありますか:

$('.searchable').find('[role~=item][data-id=array')
4

2 に答える 2

2

each を使用して配列を通過し、配列内の各要素で操作を実行できます。

 jQuery.each(array, function(i, item) {
     $(item).data("id");  
 };

または、このようなことを試すこともできます。

var filtered = $('.searchable').find(function(){
   if(array.indexOf(this.val(), 0)
        return $(this);
});
于 2012-07-27T15:40:02.490 に答える
1
var Array = [1,3], 
    elems;

$.each(Array, function(i,e) {
    elems.add( $('[role~=item][data-id="'+e+'"]', '.searchable') );
});

elems.addClass('highlight');
于 2012-07-27T15:49:35.433 に答える