我有一个jQuery ajax调用,代码如下:
var dataString = 'title=' + title;
alert ('datastring: ' + dataString); // This reports the correct value
$.ajax({
type: 'POST',
url: 'script.php',
data: dataString,
cache: false,
success: function(newTableID) {
alert ('newTableID: ' + newTableID);
// Do some stuff with the ID
},
error: function(response) {
alert('failed: ' + response);
// The above displays "failed: [object Object]"
}
});
我在php脚本中的含义并不重要,我仍然得到相同的结果:ajax调用的错误部分中的警报显示一个消息框,显示"失败:[object Object] &#34 ;.我甚至在php脚本中尝试了一个简单的回声 - 我不认为php脚本在这个ajax调用中运行。
脚本的url是正确的 - js文件和script.php文件位于同一个文件夹中。
任何人都可以了解我在这里可能缺少的东西吗?
感谢。
答案 0 :(得分:1)
如果您收到失败,那是因为您的script.php
不可用。
您可以尝试使用console.log(response)
代替alert()
,并且应该使用Firefox或Chrome调试工具查看变量中的内容。
答案 1 :(得分:0)
error
回调正在传递一个对象,但alert()
只能显示字符串。除了一些神奇的案例,在JS中将一个对象变成一个字符串会给你' [对象]'。
尝试使用console.log
代替alert
,它会在浏览器的调试控制台中显示对象的结构(通常用F12召唤)
同样在控制台中(或者如果你安装Firebug)将是一个显示网络请求和响应的面板,它可以让你知道出现错误的原因。
答案 2 :(得分:0)
您必须放置:而不是=
var dataString = 'title:' + title;