ユーザーがその行のチェックボックスをクリックしてユーザーがチェックボックスをオフにすると、検証ルールをテキストボックスに動的に追加する必要があります。これは私がやったことです、それはうまくいきますが、それが正しい方法であるかどうかは分かりません。ここ は私のhtmlコードです:妥当性検査ルールを動的に追加/削除する
<tbody>
<c:forEach items="${list}" var="item">
<tr>
<td align="center">
<input type="checkbox" name="selectItems" value="<c:out value="${item.numberPlate}"/>" />
</td>
<td align="left"><c:out value="${item.numberPlate}"/></td>
<td align="left"><c:out value="${item.driver.fullName}"/></td>
<td align="left"><input type="text" name="mileage_<c:out value="${item.numberPlate}"/>" value="" /></td>
</tr>
</c:forEach>
</tbody>
と私のjqueryの:
は-----
は、今私は追加/ removeClassを使用していますし、また---- EDITEDうまく動作しますが、これを行うためのより速い方法はありませんか?つまり、非常に多くの 'add/removeClass'命令を書くことを避けるための1つの方法ですか?最後にaddClassを使って "min:100"または "minlength:6"をどのように指定することができますか?
$("input[name=selectItems]").change(function() {
if (this.checked)
{
$(this).closest("tr").find("input[name^=mileage]").addClass('required');
$(this).closest("tr").find("input[name^=mileage]").addClass('number');
}
else
{
$(this).closest("tr").find("input[name^=mileage]").removeClass("required")
$(this).closest("tr").find("input[name^=mileage]").removeClass('number');
}
});
任意の提案は大歓迎です...私はほとんど忘れてしまった、メリークリスマス!
クライアント側(ジャバスクリプト)の検証を簡単にハッキングされていることに注意してください。サーバー側の検証を実装してから、jQの内容を試してみてください。 –