0

すべてが正しく参照されているようですが、正しく動作させることができません。奇妙なことに、一度は機能しましたが、検証メッセージがポップアップするまでに 10 秒かかり、何も変更せずに再試行しましたが、機能しなくなりました。私が持っている唯一の警告event.returnValue is deprecated. Please use the standard event.preventDefault() instead.はjQueryライブラリにあります。

<html>

 <head>
<link rel="stylesheet" href="jQuery-Validation-Engine-master/css/validationEngine.jquery.css" type="text/css"/>
   </head>

<body>

    <form id="formID">
        <input class="validate[required]" type="text" id="agree" name="agree"/>
    </form>

 <script src='js/jquery-1.10.2.min.js'></script>
    <script src="jQuery-Validation-Engine-master/js/languages/jquery.validationEngine-en.js" type="text/javascript" charset="utf-8"></script>
    <script src="jQuery-Validation-Engine-master/js/jquery.validationEngine.js" type="text/javascript" charset="utf-8"></script>

    <script>
        $(document).ready(function(){
            $("#formID").validationEngine();
        });
    </script>

</body>

上記に問題がない場合は、私のプロジェクトの他の何かが干渉している可能性がありますが、助けていただければ幸いです。

4

2 に答える 2

0

私の場合、上記で述べたように、jQuery lib 1.11.0に更新すると、警告がなくなりました。(最新のクローム)

興味がある場合は、validationEngine をどのように使用したかを次に示します。

<form id="formID" />
<button type="submit" value="Save" id="Save" onclick="clicked(event);">Submit Survey</button>

function clicked (e) 
    {
        if (confirm('Are you sure you want to submit?')) 
        {
           if ($("#formID").validationEngine('validate'))
           {
               my.LocalStorage.save(); 
           }
        }   
        e.preventDefault();  
    }
于 2013-12-04T20:43:49.560 に答える
0

おそらく、jQuery がロードされた時点ではプラグインがまだロードされていないため、validationEngine()メソッドを呼び出してもまだ定義されていません。スクリプトをModernizrと同期してロードし、両方のスクリプトがロードされたらそのメソッドを呼び出すことをお勧めします。

Modernizr の方法に固執する場合は、最小化したバージョンの Modernizr をヘッドに含めて、以下のようにスクリプトを呼び出すだけです。

<!doctype html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Your Document</title>
        <!--
            following script loads first. nevermind the version, I copied it from a script of mine
        -->
        <script type="text/javascript" src="js/modernizr.2.6.2.min.js"></script>
    </head>

    <body>
        <form id="formID">
            <!-- etc -->
        </form>
        <script type="text/javascript">
            Modernizr.load([
            {
                // following loads next
                load: 'http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js',
                complete: function() {
                    if (!window.jQuery) Modernizr.load('js/jquery-1.10.2.min.js');
                    // this is your local copy of jQuery, in case you might need a fallback
                }
            },{
                // finally the remaining scripts load
                load:[
                    'jQuery-Validation-Engine-master/js/languages/jquery.validationEngine-en.js',
                    'jQuery-Validation-Engine-master/js/jquery.validationEngine.js'
                ],
                complete: function() {
                    // all is loaded. do what you want here.
                    $("#formID").validationEngine();
                }
            }]);
        </script>
    </body>
</html>
于 2013-11-16T14:14:25.580 に答える