jqueryとjquery検証でASP.NET MVCを使用しています。検証エラーリストは2番目に表示されますsubmit /フォームのクリック
私は私が必要なフィールドとしてビューモデルに与えているなどの詳細を検証する]をクリックし提出するには...
をいくつかのエントリの名前と住所、などが含まれている1ページを作成しました。
正常に実行されているすべての検証が正常に実行されます。
必要なフィールドのすべてのエラーリストを取得します。
私はこのようにそれを取得しています:
var validator = $("#formname").validate();
for (var i = 0; i < validator.errorList.length; i++) {
console.log(validator.errorList[i].message);
}
すべてここにも細かい実行されているが、私はここに直面しています問題は、私はerrorListが第二のクリックに/最初のクリックではない提出しましたです。
すべてのerrorListを最初にクリック/送信します。
2回目のクリックはなぜ起こりますかわかりません。
誰がこの問題を解決したか解決してください。これを解決するのを手伝ってください。
ご協力いただければ幸いです。
は私のコード例は:$('#formname').submit(function() {
$.validator.unobtrusive.parse($('#formname'));
var $form1 = $('#workoerderDetails');
//Here I try to get all the error list starts
var validator = $("#formname").validate();
for (var i = 0; i < validator.errorList.length; i++) {
console.log(validator.errorList[i].message);
}
//Here I try to get all the error list ends
if ($form1.valid()) {
//my code if no any validation fire
}
else{
return false;
}
});
$のForm1が完全に正常稼動しているが、私はそれからすべてのエラーのリストを取得したいので、私は、私はforループ内のすべてのerrorlistを取得する場所バリ変数を使用しますが、それは私を与えます2回目の提出/クリックで
あなたはクリックイベントをどこで書きましたか? –
Unobtrusive Validationプラグインも使用していますか?そうであれば、Unobtrusiveプラグインが自動的にそれを行っているので、 '.validate()'メソッドを呼び出すことはできません。あなたのインスタンスは常に無視されます....これは、クリック事象の奇妙なタイミングを説明するかもしれませんが、それを知るには十分なコードを見ることができません。 – Sparky
@ABUdhay私はボタンをクリックしてjqueryフォーム名を使用してsubmitフォームを送信しました。 $( "#formname")のようなものです。ここで関数の内部で検証をチェックしました。 –