2016-12-28 11 views
-1

リモートURLを動的に変更したいのですが、入力を完了したら正常に動作しますが、「load.php」ボタンをクリックしても「check.php」がロードされます。助けて。リモートURLを動的に変更するjqueryの有効性を確認する

これはあなたのdevのツールであなたのコンソールを開くと、エラーvalidate() is not a functionかのように表示されます私のコード

<script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.min.js"></script> 
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.15.0/jquery.validate.js"></script> 

<form id="validate"> 
     <input id="testremote" name="testremote" type="text" data-rule-remote="check.php" required data-msg-required="Please Fill" > 
     <br/><br/> 
     <input class="submit" type="submit" value="Submit"> 
</form> 
<button onclick="changeurl('load.php');">Change URL(load.php)</button> 
<button onclick="changeurl('test.php');">Change URL(test.php)</button> 
<script> 
$(function(){ 
$("#validate").validate(); 
}); 

function changeurl(a){ 
var x = $("#testremote"); 
x.attr("data-rule-remote",a); 
} 
</script> 
+0

「リモート」URLを動的に変更することはできません** http://jsfiddle.net/gdusgax2/〜このデモでは、ページを読み込むときにすぐにURLを変更すると、フォームを送信しようとした後でURLを変更することはできません。 – Sparky

+0

本当の質問は**なぜ**あなたが最初にこれを行う必要があるだろうか?単に同じURLにデータを送信し、代わりにサーバー上のさまざまな条件を処理します。 – Sparky

+0

load.phpにアクセスする必要のあるデータを更新するときに私の編集フォームに使用したいのですが、最初にデータを挿入するときcheck.php(データベースに存在する場合はデータをチェックしてください) –

答えて

0

です。このエラーにより、このスクリプトの実行がここで終了し、関数changeurl()も作成されません。

しかし、なぜvalidate() is not a function? これは、ライブラリが含まれているリンクに問題があることを意味します。これを解決するにはhttphttpsに置き換えてください。私は資源の一つがhttphttps他のリソースを経由してロードされている場合は無視されることを考えて間違っていないよ場合

<script src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.15.0/jquery.validate.js"></script>

。しかし、私はそれについては分かりません。

あなたのお役に立てば幸いです。

+0

他のページからの質問にお答えしているようです。 OPはエラーを出すことについて何も言わなかった、実際に、彼は反対を記述している。彼は 'リモート'ルールは機能しているが、URLを動的に更新して機能するわけではないと述べた。 'remote'ルールが働いている場合、' .validate() 'が認識されているエラーはありません。 – Sparky

+0

私は自分のコードをコピーして実行し、エラーを投げた。 –

+0

ロード時にエラーが発生しない:http://jsfiddle.net/89wkdb4f/ – Sparky

関連する問題