-1

それは私か IE のどちらかですが、真実は form.valid() が IE で機能しないことです (Chrome/Firefox で機能します)。私は次のバージョンを使用しています:

  • jquery1.8.3
  • 検証プラグイン 1.11.1

必要に応じて 1 つのフィールドを持つ単純なフォームがあり、送信ボタンを押すと検証が起動し、ユーザーに値の入力を求めるプロンプトが表示され、このコードが「alert($(this).valid());」で起動されます。ユーザーが値を入力して送信ボタンをクリックすると、以下の jquery コードが実行されます。

$(function () {
   $('form').submit(function () {
        alert($(this).valid());
        if ($(this).valid()) {
           alert('Hello');
        }
    });
});

問題は、どのアラートも発生しないことです。私はここで何をしているのですか?検証プラグインのドキュメントを確認したところ、私が使用している jquery バージョンをサポートしていると書かれていますhttp://jqueryvalidation.org/

jQuery、1.6.4、1.7.2、1.8.3、1.9.0 でテスト済み

開発者ツールでは、エラーは表示されません

*編集***

このフォームには、タイプ file (ファイルのアップロード用) の入力があります。コメントする/表示しない場合は機能します。したがって、ファイル入力がある場合、送信ボタンなどを無効にできない場合、IEのセキュリティと関係があると思います。ちょうど私の2セント!!!

4

3 に答える 3

0

当社が最終的にIE8からIE10にアップグレードすると、検証機能が機能しなくなりました。私がやっていたようなID名だけでなく、フォームでそれを呼び出さなければならなかったことが判明しました。

動作しません

$("#tcForm").validate({...

両方のバージョンの作品

$("フォーム").validate({...

$("form#tcForm").validate({...

于 2014-12-23T18:52:31.670 に答える