Ich versuche, ein Formular ohne Schaltfl?chen zu senden, indem ich eine JavaScript-Funktion aufrufe und das Formular mit JQUERY/PHP ausführe. Ich m?chte, dass das Formular stillschweigend im Backend ausgeführt wird, ohne dass die Seite neu geladen werden muss. Leider wird immer wieder der Fehler ?JavaScript-Funktion undefiniert“ zurückgegeben, obwohl dieser auf der Seite vorhanden ist. Zugegebenerma?en bin ich nicht gut in JavaScript, also behandeln Sie mich bitte wie einen Neuling und weisen Sie mich in die richtige Richtung. Danke, mein Code ist
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form id="my_1form" action="" method="POST"> <input type="text" name="acc_name" id="acc_name" value="name"/> <br/> <input type="text" name="with_id" id="with_id" value="1"/> <div onclick="submit_1form()">Submit</div> </form> <script> $(document).ready(function() { function submit_1form() { var fo1rm = document.getElementById("my_1form"); fo1rm.submit(); var acc_name = $("#acc_name").val(); var with_id = $("#with_id").val(); var dataString = 'acc_name=' + acc_name + '&with_id=' + with_id; { // AJAX Code To Submit Form. $.ajax({ type: "POST", url: "submit-withdraw.php", data: dataString, cache: false, success: function(result) {} }); } return false; } }); </script>
Bitte beachten Sie, dass ich das Jquery-Skript im Header-Tag aufrufe <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
< /p>
Vielen Dank!
首先確保您的 jQuery 文件正確加載,并且最好在表單提交上調(diào)用您的 javascript 函數(shù)。
您的 submit_1form
函數(shù)嵌套在匿名 document.ready()
函數(shù)中,因此在需要時(shí)無(wú)法在作用域中找到它。由于它是一個(gè)函數(shù),因此不需要首先在 document.ready
中定義它。
為了避免頁(yè)面重新加載,請(qǐng)不要使用 form
的典型 submit
事件。相反,請(qǐng)像現(xiàn)在一樣使用 AJAX,并通過(guò) div
的 click
事件觸發(fā)該 AJAX。