1

私はJqueryを初めて使用するので、助けていただければ幸いです。

私のテーブルには多くの行があり、そのうちのいくつかはエラーです:

        <td>
            Error:
           <input name="[0].ValidationResult" type="hidden" value="Error:" />
        </td>

        <td>
            <input data-val="true" data-val-required="The isChecked field is required." name="[0].isChecked" type="checkbox" value="true" /><input name="[0].isChecked" type="hidden" value="false" />
        </td>

エラーと同じ行のチェックボックスを無効にする方法を見つけたいと思います。

ご協力いただきありがとうございます。

4

2 に答える 2

4

このロジックはサーバー上で実行されますが、何らかの理由でjavascriptを使用して実行する必要がある場合は次のようになります。

$(':hidden[value="Error:"]')
    .closest('tr')
    .find('td :checkbox')
    .attr('disabled', 'disabled')
    .attr('checked', 'checked');

コメントセクションで指摘されているように、jQuery 1.6以降を使用している場合は、次の.prop()代わりにメソッドを使用する必要があります.attr

$(':hidden[value="Error:"]')
    .closest('tr')
    .find('td :checkbox')
    .prop('disabled', true)
    .prop('checked', true);
于 2012-04-26T06:53:27.393 に答える
0

1つの方法は、エラーを含むセルに特定のクラスを指定し、そのクラスをjQueryセレクターで使用することです。

<td class="errorTd>
     Error:
     <input name="[0].ValidationResult" type="hidden" value="Error:" />
</td>

<td>
    <input data-val="true" data-val-required="The isChecked field is required." name="[0].isChecked" type="checkbox" value="true" /><input name="[0].isChecked" type="hidden" value="false" />
</td>

これで、次のようにclass="errorTd"を使用してセルの入力を無効にできます。

$('.errorTd input').attr('disabled', 'disabled');
于 2012-04-26T06:53:50.933 に答える