jquery ajax如何实际工作

假设我有一个这样的表格(摘自j​​query的书):

 

和这样的ajax函数:

 $(document).ready(function() { $('#submit').click(function () { var name = $('.uname').val(); var data = 'uname=' + name; $.ajax({ type:"POST", url:"welcome.php", data: data, success: function (html) { $('#message').html(html); } }); return false; }); }); 

并且脚本文件如下所示:

  

它会起作用,但这是我无法理解的。 如果welcome.php脚本从POST数组中获取$ name的值,为什么需要通过ajax请求将数据发送给它? POST数组肯定包含了这些信息吗?

此外,我的理解是ajax请求是键/值对的forms,但数据以uname = name的forms发送,但键/值对通常不具有等号。

这里发生了什么 – 它有效,但对我来说没有意义,我讨厌用死记硬背学到的代码。

问题出在你的代码上
var data =’uname =’+ name;
使用
var data ='{uname:’+ name +’}’;
因为它是一个post方法

jQuery AJAX异步工作。 表单未发布,因为您可以看到它没有在表单标记上设置操作或方法属性。

jQuery拦截按钮单击并设置新的异步请求,然后将数据添加到该请求并将其发布到服务器。