这里我有一个JavaScript文件的表单,该文件抓取输入并在单击按钮时使用jQuery的AJAX方法将其发送到瘦PHP页面。 PHP只需打印"Hello and welcome person_name",假设名称已设置,这正是我想要的。如果请求成功,我想在同一页面的div元素中显示该文本,如果失败,则显示alert。但如果它是错误的,我在div元素中显示"Error"文本。Ajax只请求返回错误,但状态码是200 OK

现在,当我测试这个我只看到文本"Error"打印在div。我检查了页面,看到的状态为200 0K,响应"Hello and welcome my_name和其他详细信息...

XLhLp.png

Submit

$("button#n").click(function() {

$("p").html("YOU ARE HERE 1");

var $username = $('input#x').val();

var $password = $('input#y').val();

var $mydata = $('.myform').serialize();

if ($username != "" && $password != "") {

$.ajax({

data: $mydata,

dataType: 'text',

type: 'POST',

url: 'http://localhost/products/s11.php',

success: function(responseText) {

$('#display').html(responseText);

},

failure: function() {

alert("Failed");

},

error: function() {

$('#display').html("Error");

}

});

}

return false;

});

if(isset($_POST['username'])) {

print "Hello and welcome" . " " . $_POST['username'];

} else { ?>

//do something else...

2017-07-20

smacaz

+1

如果响应是200 OK但错误处理程序被击中,那么通常意味着响应存在格式问题。尝试将正确的参数添加到'error'处理函数中,以使您能够获取错误描述来诊断 –

+0

尝试使用'echo“Hello and welcome”。 “”。 $ _POST ['username'];'而不是'print'。 –

+0

使用'echo'而不是'print' –

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐