使用AJAX提交表单PHP JQuery将我带到操作页面

我试图在不刷新页面的情况下提交此表单,但是当我提交时,它会将我带到操作页面。 我的代码出了什么问题? 这是我的表格:



';

这是我的剧本:

 $('form.ajax').on('submit', function () { var that = $(this), url = that.attr('action'), type = that.attr('method'), data = {}; that.find(['name']).each(function (index, value)) { var that = $(this), name = that.attr('name'), value = that.val(); data[name] = value; }); $.ajax({ url: url, type: type, data: data, success: function (response) { consol.log(response) } }); }); 

将事件作为参数传递并使用event.preventDefault()

 $('form.ajax').on('submit', function (e) { e.preventDefault(); 

你忘了最后return false或防止默认。

  $('form.ajax').on('submit', function (event) { event.preventDefault(); var that = $(this), url = that.attr('action'), type = that.attr('method'), data = {}; .... //or return false; }); 

使用e.preventDefault()或return false; 防止表单提交

 $('form.ajax').on('submit', function (e) {//Pass the event argument here var that = $(this), url = that.attr('action'), type = that.attr('method'), data = {}; that.find(['name']).each(function (index, value)) { var that = $(this), name = that.attr('name'), value = that.val(); data[name] = value; }); $.ajax({ url: url, type: type, data: data, success: function (response) { consol.log(response) } }); e.preventDefault(); //OR return false; }); 

使用event.preventDefault()

 $('form.ajax').on('submit', function (e) { e.preventDefault(); //code here }); 

使用jQuery ajax并不妨碍浏览器遵循Form Action页面。 要实现这一点,您应该通过简单的函数阻止浏览器执行此操作: e.preventDefault()

这是你的代码:

 //Pass the event argument (e) $('form.ajax').on('submit', function (e) { var that = $(this), url = that.attr('action'), type = that.attr('method'), data = {}; that.find(['name']).each(function (index, value)) { var that = $(this), name = that.attr('name'), value = that.val(); data[name] = value; }); $.ajax({ url: url, type: type, data: data, success: function (response) { consol.log(response) } }); //Prevent Browser to follow form action link: e.preventDefault(); //you can use also // return false; }); 

试试这个..

 
function mail() { var name = $("#user_name").val(); var email = $("#email").val(); $.ajax({ type: "POST", url: "contact.php", data: "name=" + name+"&customer_mail="+email, success: function(html) { //do ur function } }); }