2016-12-28 3 views
-1

Ich möchte Remote-URL dynamisch ändern, wenn ich die Eingabe füllen, normal arbeiten, aber wenn ich auf "Load.php" klicken, laden Sie immer noch die "check.php". Hilf mir.Ändern Remote-URL dynamisch Jquery Validierung

dies mein Code

<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

Offenbar können Sie die 'remote' URL ** nicht ** dynamisch ändern: http://jsfiddle.net/gdusgax2/ ~ Wie bei dieser Demo, wenn Sie die URL beim Laden der Seite sofort ändern, bleibt sie haften, aber Sie können die URL nicht ändern, nachdem Sie versucht haben, das Formular zu senden. – Sparky

+0

Die eigentliche Frage ist ** warum ** du das überhaupt machen musst? Senden Sie die Daten einfach an die gleiche URL und behandeln Sie stattdessen die verschiedenen Bedingungen auf dem Server. – Sparky

+0

Ich möchte dies für mein Bearbeitungsformular verwenden, wenn ich Daten aktualisiere, die auf load.php zugreifen müssen, aber wenn ich Daten zum ersten Mal in die check.php-Datei einfüge (überprüfe die Daten, wenn sie in der Datenbank vorhanden sind) –

Antwort

0

Wenn Sie Ihre Konsole in dev Tools öffnen, werden Sie Fehler validate() is not a function oder so ähnlich sehen. Dieser Fehler führt dazu, dass die Skriptausführung aufgrund dieses Fehlers beendet wird und die Funktion changeurl() nicht einmal erstellt wird.

Aber warum validate() is not a function? Dies bedeutet, dass etwas mit der Verbindung falsch ist, durch die die Bibliothek enthalten ist. Um es zu lösen, ersetzen Sie einfach http durch https.

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

Wenn ich mich nicht falsch Ich glaube, wenn man von Ressourcen über https andere Ressourcen mit http werden ignoriert geladen wird. Aber ich bin mir nicht sicher.

Ich hoffe, es hat dir geholfen.

+0

Es ist als würden Sie eine Frage von einer anderen Seite beantworten. Der OP sagte nichts über Fehler, in der Tat beschreibt er das Gegenteil. Er erklärte, dass die "Remote" -Regel funktioniert, aber nicht mit der URL, die über seine Funktion dynamisch aktualisiert wird. Wenn die 'remote' Regel funktioniert, dann gibt es keine Fehler mit' .validate() 'erkannt zu werden. – Sparky

+0

Ich weiß nicht, ich habe seinen Code kopiert und es ausgeführt und es wurde ein Fehler ausgegeben. –

+0

Keine Fehler beim Laden: http://jsfiddle.net/89wkdb4f/ – Sparky

Verwandte Themen