フォームに検証があり、検証が発生するとすべてのテキストボックスの境界線の色が赤に変わりますが、フィールドが検証に成功すると、フィールドからこのエラークラスを削除する方法は?
エラー クラスの私の css は :.error {border:2px solid #f00 !important;} であり、jquery では、この赤い境界線をテキスト ボックスから削除するために必要なものは何ですか?
success: function() { } ここで何を渡す必要がありますか??
.errorクラスを設定したセレクターの名前は何ですか。
そのIDがtxtEmailであると考えてから、以下のように使用して.errorクラスを削除できます
$("#txtEmail").removeClass("error");
$("Your jQuery selector").removeClass("error");
jquery removeClassを参照してください
フォームの構造はどうですか?このようなものだとします
<div id="testdiv> // or any thing having id
//your textboxes
</div>
次に、次のようにjqueryを使用できます。
<script>
//create one function which add and removes error class
function CheckValidation()
{
var alltxt = $("#testdiv input[type='text']");
for(var i=0;i<alltxt.length;i++)
{
if(validation condition fail)
{
alltxt[i].className = "error";
}
else
{
alltxt[i].className = "";
}
}
}
</script>
それが役に立てば幸い。
以下のコードを試してください
<input type="button" id="btn1" value="1" />
<input type="button" id="btn2" value="Add Class"/>
<input type="button" id="btn3" value="Remove Class"/>
$(document).ready(function() {
$("#btn2").click(function(){
$("#btn1").addClass("one");
});
$("#btn3").click(function(){
$("#btn1").removeClass("one");
});
});
jQuery Validateプラグインを使用しているようです。私が正しければ、読み進めてください。
デフォルトでは、プラグインはerror
有効な入力が入力されるとクラスを削除し、クラスを割り当てvalid
ます。
success:function(){}
したがって、プラグインが成功時に別の動作をするようにする場合を除き、を設定する必要はありません。
あなたが設定したように思えます-これは、クラスを削除してクラスを割り当てるsuccess:function(){}
というデフォルトの動作を削除します-しかし、成功した場合に新しい関数を割り当てませんでした。その結果、成功しても何も起こりません。error
valid
したがって、成功時のデフォルトの動作に問題がない場合はsuccess:function(){}
、検証設定から削除してください。
これが役立つことを願っています。
success: function() {
$('Your-jquery-selector')removeClass("error");
}