1

HTMLにテーブルがあり、このテーブルでは、<td>タグ内の個々の値がJavascript配列から生成されています。

<td>タグに含まれている値を相互に比較し、重複がないか確認したいと思います。

4

1 に答える 1

5

<td>要素にはがなく、内容があります(他の要素が含まれる場合と含まれない場合があります)。あなたの質問が「2つのtd要素が同じ内容を持っていないことを確認するにはどうすればよいですか?」あなたはこのようなことをすることができます:

var contents = {},
    duplicates = false;
$("#yourtableidhere td").each(function() {
    var tdContent = $(this).text();
    if (contents[tdContent]) {
        duplicates = true;
        return false;
    }
    contents[tdContent] = true;
});    
if (duplicates)
   alert("There were duplicates.");

このプロセスがいつ発生するかはわかりませんが、ユーザーがボタンなどをクリックしたことに応答する場合は、上記のコードをクリックイベントハンドラーに配置します。

デモ: http: //jsfiddle.net/FA6SR/

明らかに、上記を展開して、どのセルに重複した値があったか、値が何であったかなどを正確に記録することができます。

編集-PSあなたは値が配列から来ていると言います。テーブルセルではなく配列に対して比較テストをコーディングするのも同じくらい簡単ですが、実行時の方が効率的です。jQueryは実際にはそれを助けません、あなたはただ標準的なforループを使うでしょう。

于 2012-08-02T07:17:33.003 に答える