使用AJAX调用PHP文件

我正在尝试使用jQuery中的$ .ajax()函数调用php文件,但它无法正常工作。 单击页面上的按钮时,将运行以下代码:

if($error === false) { alert($error); $.ajax({ url: '/new-user.php', type: 'POST', data: { name: $('#name').val(), email: $('#name').val(), password: $('#name').val() } }); 

这是我的表格:

 
Passwords do not match.

我已经将表单设置为onClick以返回false,以便表单在提交时不会重新加载页面,以便jQuery可以运行。

任何帮助是极大的赞赏。

人们使用表单的主要原因是你可以定义一个

动作 (在你的情况下是一个PHP脚本),

方法 (GET或POST)和a

提交按钮,捕获表单中的所有信息并自动将其发送到服务器。

当您有20-30个输入或处理多个文件输入时,这很好。 在您的情况下,您正在处理ajax函数中的数据检索,您没有定义提交按钮,操作或方法,因此您可以通过不使用表单来使事情变得更容易….

  $.ajax({ url: '/new-user.php', type: 'POST', dataType: "json", data: { name: $('#name').val(), email: $('#email').val(), password: $('#password').val() } }).done(function(data){ alert(JSON.stringify(data)); }); 

为简单起见,我省略了格式化div …

    

上面的代码将获取输入中的数据,将其发送到php脚本并输出从警报中的PHP脚本发回的数据。

最重要的是,您的页面不会刷新!

我实际上是序列化我的表单数据,因为它的代码更少。 另外,您可以使用多种forms。 例如,您可以拥有一个隐藏的输入,其中包含一个任务编号,并有一个PHP脚本来委派任务。 或者,您可以为submit函数提供另一个变量来传递脚本的位置。 因此,我提交的表格如下。

HTML:

 

使用Javascript:

 function submitForm(formId){ var formData = $.(formId).serialize(); $.ajax({ url: '/script.php', type: 'POST', data: formData, success:function(response){ alert(response); } }); } 

请尝试以下代码:

 $(".reg-btn").click(function(e) { e.preventDefault(); $.ajax({ url: '/new-user.php', type: 'POST', data: { name: $('#name').val(), email: $('#name').val(), password: $('#name').val() }, success:function(response){ //Do something here... } }); }); 

请注意,您的表单上没有提交按钮。 所以返回false是没有用的..