私のスクリプトはエラーを投げます:
TypeError:jQuery.validator is undefined additional-methods.js:20 TypeError:$(...)。validate is not function function.php:115
おそらく、jQueryコードに間違いがあります。
<head>
<script type="text/javascript" src="js/jquery-1.10.2.js"></script>
<script type="text/javascript" src="js/jquery.form.js"></script>
<script src="http://jquery.bassistance.de/validate/additional-methods.js"></script>
</head>
<body>
<form id="registerForm" method="post" action="logrej.php">
<input name="login" type="text"/>
<input name="nick" type="text"/>
<input type="password" id="passw" name="password"/>
<input type="password" name="retype" />
<input type="submit" value="Zarejestruj!" />
</form>
<script>
$("#registerForm").validate({
rules: {
login: {
required:true,
rangelenght: [4,20],
remote:"look.php"
},
nick : {
required:true,
rangelenght:[4,20],
remote:"look.php"
},
password: {
required:true,
rangelenght:[4.20]
},
retype: {
required:true,
equalTo:"#passw"
}
},
messages:{
login:{
required:"To pole jest wymagane!"
}
}
})
</script>
検証プラグインをロードしていません。必要なもの:
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>
追加のメソッドをロードする行の前にこれを置きます。
また、jquery.bassistance.deではなく、CDNから追加のメソッドも取得する必要があります。
その他のエラー:
[4.20]
あるべき
[4,20]
そして
rangelenght:
する必要があります:
rangelength:
私にとっては、 http:// ajax ...を https:// ajax ...に変更することで問題が解決しました(httpにSを追加)
https://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.js
additional-methods.js
の前に jquery.validate.js を含めます。
$.validate()
メソッドがそこで定義されています
おそらくあなたの取得が原因であるJavaScriptエラーのようです
password: {
required:true,
rangelenght:[4.20]
},
[4.20]
は[4,20]
である必要があるため、additional-methods
の検証コードがスローされているため、タイプエラーが表示されます。
編集:他の人が以下のコメントで指摘しているように、rangelenght
のスペルも間違っています&jquery.validate.js
ライブラリが見つからないようです(他のアセットの1つにコンパイルされていない場合)
同じ問題がありました。私はjquery-validationをnpmモジュールとして使用していますが、私の修正はjsファイルの開始時にモジュールを要求することでした:
require('jquery-validation');
ベースのjQuery検証ライブラリは含まれていません。
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.js"></script>
追加のメソッドライブラリの前に置きます。 (ところで、これはホストされたバージョンです。必要に応じて独自のものをダウンロードしてください)