使用PHP MySQL中的jQuery AJAX提交表单而无需重新加载

我有一个基本的注册/登录页面,用PHP将数据提交到SQL数据库。 但是,我希望页面不要在jQuery AJAX的帮助下重定向(无论是否成功)。

这就是我目前所拥有的,它无法正常工作。 它不显示任何错误消息。

HTML – signup.html

   Signup    

JavaScript – signup.js

 function submit() { $("form").submit(function(e) { e.preventDefault(); $.ajax({ type: 'POST', url: 'signup.php', data: $('form').serialize(), success: function() { console.log("Signup was successful"); }, error: function() { console.log("Signup was unsuccessful"); } }); }); } $(document).ready(function() { submit(); }); 

PHP – signup.php

 query($addData) === TRUE) { echo "Working"; } else { echo "Not working"; } ?> 

这是JSFiddle 。

我希望你们能提供帮助。 提前致谢 :)

如果您使用的是ajax,则无需使用输入类型作为submit使用button

 $(document).ready(function() { $("#signup").click(function(e) { e.preventDefault(); $.ajax({ type: 'POST', url: 'signup.php', data: $('form').serialize() success: function() { console.log("Signup was successful"); } error: function() { console.log("Signup was unsuccessful"); } }); }); 

也在这里改变

 $post_FirstName = $_POST['first']; // name is `first` not `firstname` 

你有一些刹车和括号没有正确关闭

 function submit() { $("form").submit(function(e) { e.preventDefault(); $.ajax({ type: 'POST', url: 'signup.php', data: $('form').serialize(), success: function() { console.log("Signup was successful"); },//here error: function() { console.log("Signup was unsuccessful"); } });});//here } $(document).ready(function() { submit(); }); 

无需调用submitfunction。 只是这样做,(你错过了逗号和结束标记):