0

NULLに入力(複数提出-ボタン)を提出します(「myView」と呼ばれる)リモート検証の原因は、私は最近、私の形でのリモート検証を実装

@Html.TextBoxFor(m => m.tag) @Html.ValidationMessageFor(m => m.tag) 


<button class="form-button-submit" type="submit" name="Send" value="Send">Send</button> 

検証は完全にうまく動作します。

問題:フィールドをクリックして別の場所をクリックすると、タグフィールドの検証を手動で開始せずに[送信]ボタンをクリックすると、myView()関数の前に "IsTagUnique"関数が実行されます。これは私のサブミット入力を引き起こします(私は実際にはビューに表示されているものと同じように(実際には別の名前/値)nullになるような複数の送信ボタンを持っています。焦点を当てると、タグ・フィールドをぼかし、および変更イベントをトリガすることによりただし、検証をトリガーしない

答えて

0

を、私は、これは既知のバグのようですが分かったしばらく検索した後:。。

この問題は、リモートメソッドを使用してフィールドを検証するフォームの場合に発生します。バリデータが起動した後に送信ボタンが押された場合、すべてが問題なく、要求にはクリックされた送信ボタンの名前と値のペアが含まれます。 ただし、メソッドは送信ボタンが押される前に起動されない場合、結果の要求には送信ボタンの値/ペアは含まれません。私のために働いた

ソリューションは、このいずれかです:arturoribes

$(function() { 
$('button[type=submit]').click(function() { 
    $('<input>').attr({ 
     type: 'hidden', 
     name: this.name, 
     value: this.value 
    }).appendTo($(this).closest('form')); 
}); 
}); 

クレジット

関連する問題