1

だから私は数字の配列を持っているとしましょう["1", "3", "2"]

これらは、特定の要素に指定した data-cardNumber 属性の値に対応しています。

配列内の data-cardNumber 値を持つすべての要素を削除したい。

配列を反復処理し、 を呼び出す配列内の各項目ごとにセレクターを構築することでこれを実行しようとしましたが、うまくいき.remove()ません。

セレクターは複数の文字列にまたがっているため、複雑すぎると思います。

.remove()配列と、値が配列内にある data-cardNumber 属性を持つすべての要素を反復処理するにはどうすればよいですか?

これが私が試したコードです:

for(var i=0; i<swipedAwayCards.length; i++){
    $('[data-cardNumber="'+swipedAwayCards[i]'"]').remove();
    // i'm trying to construct a selector like [data-cardNumber="1"]
}
4

3 に答える 3

1

コンソールに表示されるはずだった単なる構文エラーのようです。

$('[data-cardNumber="'+swipedAwayCards[i]+'"]')

+(あなたは連結で決勝を逃しました)。

于 2013-10-11T16:25:57.303 に答える
0

次のいずれかを行う必要がある場合があります

var a = [1,2,3,4];
for(var i = 0 ; i< a.length; i++){
delete(a[i]); // This resets the value to undefined
}

次の結果が生成されます

[未定義、未定義、未定義、未定義]

また

var a = [1,2,3,4];
var b;
for(var i = 0 ; i< a.length; i++){
  b = a.pop();// This actually removes the Element from array and puts it in the variable b
}

結果: ** b = 1 最後にポップされる要素は 1 となり、b = []**

于 2013-10-11T16:30:44.717 に答える
0

次のことを試すことができます。

$('[data-cardNumber="'+swipedAwayCards[i] + '"]').each(function() {
  $(this).remove();
});

jquery にはセレクターのすべての一致を反復する機能が既にあるため、これは for ループを実行するのではなく機能するはずです。

于 2013-10-11T16:26:54.673 に答える