【发布时间】:2016-12-01 11:02:32
【问题描述】:
我正在尝试使用 jquery 将表单数据发送到另一个 PHP 页面。
这是我的代码:
var datastring = $("#form1").serialize();
$.ajax({
type: "POST",
url: "save.php",
data: datastring,
dataType: "json",
success: function(data) {
console.log(data)
},
error: function(data) {
alert('error handing here');
console.log(data)
}
});
当我运行此程序时,我会收到一条警告“此处处理错误”并将输出记录到我的控制台。
保存只包含:
<?php
ECHO "HELLO";
?>
控制台上记录的数据是:
Object {readyState: 4, responseText: "HELLO", status: 200, statusText: "OK"}
任何人都可以告诉我为什么这不起作用..我如何读取提交给 save.php 的数据?
谢谢
【问题讨论】:
-
您正在请求 JSON 响应,但
HELLO不是有效的 JSON。因此,jQuery 的内部解析操作失败,您会收到错误消息。 -
您没有从 PHP 脚本返回格式化的 JSON 字符串,这就是原因。因此,要对其进行测试,请返回 JSON 或删除 ajax 请求的
datatype选项 -
dataType: 'text'将解决此问题,或者在您的 PHP 中使用json_encode()来实际返回 JSON 响应。 -
谢谢 - 愚蠢的错误..
标签: jquery forms serialization