下面的Ajax函数将数据从页面发送到由PHP解释的页面。
使用Firebug,我们可以看到数据已发送,但PHP页面未收到。如果我们将它更改为$ .get函数并使用PHP _GET数据然后它可以工作。
为什么它不适用于$ .post和$ _POST
$.ajax({
type: "POST",
url: 'http://www.example.com/page-in-question',
data: obj,
success: function(data){ alert(data)},
dataType: 'json'
});
答案 0 :(得分:0)
如果有问题,可能在你的php页面中。 尝试直接在浏览器中浏览php页面并检查输出是什么。 如果您需要来自post的一些输入,只需将其更改为GET以进行调试
答案 1 :(得分:0)
试试这个
var sname = $("#sname").val();
var lname = $("#lname").val();
var html = $.ajax({
type: "POST",
url: "ajax.class.php",
data: "sname=" + sname +"&lname="+ lname ,
async: false
}).responseText;
if(html)
{
alert(html);
return false;
}
else
{
alert(html);
return true;
}
alax.class.php
<php
echo $_REQUEST['sname'];
echo $_REQUEST['sname'];
?>
答案 2 :(得分:0)
同一页面上的Ajax无法通过POST
等显示数据,因为PHP已经运行了这就是为什么你通常会使用外部页面来处理你的数据,然后使用ajax来获取响应。
示例
success: function(){
$('#responseDiv').text(data);
}
答案 3 :(得分:0)
您正在发布数据...检查目标是否正在返回某些数据。 如果它返回一些数据,那么只有你才能看到数据。
添加成功和错误..这样你就可以得到什么
success: function( data,textStatus,jqXHR ){
console.log(data);//if it returns any data
console.log(textStatus);//or alert(textStatus);
}
error: function( jqXHR,textStatus,errorThrown ){
console.log("There is some error");
console.log(errorThrown);
}