4

クリックされた列が行の最初にあるかどうかをチェックするJqueryコードが必要でした。

特定のオプションを選択するためにテーブルが使用されています。そして、onclickすると、jqueryを使用してCSSクラスを割り当て、すべての兄弟td要素からそのクラスを削除することでクリックされたtdの背景が表示されます(チェックマーク)。

問題は、オプション/質問のラベルが含まれているため、最初の列をクリックしたときにこれを実行しないようにする必要があることです。

現在のコードは次のとおりです。

  $(document).ready(function () {
    $("table tr td").click(function () {
        $(this).parent().find('td').each(function () {
            $(this).removeClass("CheckMark");
        });
        $(this).addClass("CheckMark");
    });
});

列が最初の場合、オプションのラベルが含まれているため、アクションを実行しないでください。

状況を適切に説明したことを願っています:)。

よろしくお願いいたします。A.Ali

4

1 に答える 1

9

のクリック時にindex()を使用して最初の列を見つけますtdindex() がゼロを与える場合、ゼロベースのindex()インデックスを与えるため、最初の列になります。

$(document).ready(function () {
    $("table tr td").click(function () {

        if($(this).index() == 0) return;    

        $(this).parent().find('td').each(function () {
            $(this).removeClass("CheckMark");
        });
        $(this).addClass("CheckMark");
    });
});
于 2013-02-18T10:46:34.353 に答える