我一直在将我的代码与网络上的其他示例进行比较,但仍然找不到我的错误。当我加载页面并单击提交时,屏幕上没有任何反应。但是,在 Firebug 中,我收到POST 200 OK
了 POST 响应选项卡中应该显示的 PHP 脚本。
由于 Firebug 做出了适当的响应,我对哪里出了问题感到困惑。
基本 HTML 表单
<form id="form" action="" method="post">
<input type="submit" name="submit" id="submit" value="submit"/>
</form>
<div id="results"></div>
jQuery 创建一个 JS 对象。对象通过JSON.stringify
和发送JSON.parse
。提交事件处理程序触发$.ajax
. JSON 数据被传递到ok.php
,理论上它应该返回脚本中调用的 PHP 信息。
var addIt = new Object();
addIt.one = "one";
addIt.two = 2;
addIt.three = addIt.one +" + "+ addIt.two +" = "+ "three";
$jsonAddIt = JSON.stringify(addIt);
$jsonAddIt = JSON.parse($jsonAddIt);
$('#submit').click(function(e){
e.preventDefault();
$.ajax({
type: 'POST',
url: 'ok.php',
dataType:'json',
data: ({ json:$jsonAddIt }),
success:function(data) {
$("#results").html(data);
}
});
});
PHP
<?php
$ajaxInfo = $_POST["json"];
if ($ajaxInfo !="")
{
echo "info transfered";
}
else
echo "nothing";
?>
<div id="returned">
<?php print_r($ajaxInfo); ?>
</div>