区块链技术博客
www.b2bchain.cn

如果只有3个Ajax返回中的2个是Json,则JQuery无法正常工作 – php程序员分享

本文介绍了如果只有3个Ajax返回中的2个是Json,则JQuery无法正常工作 – php程序员分享,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

我有以下问题。

我写了一个ajax请求,我的PHP文件进行了一些检查,并返回我用json_encode()回显的数组或常规回显。这取决于我的PHP文件进行检查的结果。我的问题如下:

当我给我的Ajax请求dataType: "json"时,似乎只有在我从PHP文件返回一些json_encode($array)时,它才起作用。如果我回显正常数据,jQuery将无法正常工作。

一个小例子:

$.ajax(             {                 type: "get",                 dataType: "json",                 url: "check_basket.php",                 data: {bought : bought, pid : pid, cid : cid, csid : csid, lang : lang},                 success: function(data){                                 if(data.status == '1'){                                 alert(data.b);                             } else if(data.status  == '2'){                                 alert(data.b);                             } else {                                  $("#dropdown_shopping_cart_inner").html(data);                                  $('#head_shopping_cart').load(document.URL +  ' #head_shopping_cart');                                  $('#dropdown_shopping_cart').slideDown(800);                             }                 }             }         ); 

在我的PHP中,我这样说:

if(get_date_last_purchased($pid) == true){     $arr = array('status' => 1, 'b' => 'test1');     echo json_encode($arr); } elseif($bought > $row0['gm_max_order']){     $arr = array('status' => 2, 'b' => 'test2');     echo json_encode($arr); } else {     echo "everything ok"; } 

如果发生以下两种情况之一,并且状态1或2返回到我的JQuery,则一切正常。但是,当第三个PHP条件发生并且我的PHP仅返回echo而没有json_encode时,Jquery只会执行任何操作。

有什么建议么?

参考方案

您有两种选择。

客户端:从此处删除dataType: "json"
服务器端:在此处添加json_encode("$output")。另外,您可以发送包装在null内的空值或[]值,因为jQuery将其作为脚本执行。

对于服务器端的解决方案,我会说:

echo '["everything ok"]'; 

我相信这比标题听起来要难一些,但我可能完全错了。我有一个像这样的数组:[["londrina",15],["cascavel",34],["londrina",23],['tiradentes',34],['tiradentes',21]] 我希望能够采用通用…

我有以下片段。 var myData = { video: $("input[name='video[]']:checked").serialize(), sinopse: $("#sinopse").val(), dia: $("#dia").val(), quem: $(&#…

我试图了解如何将MySQL结果转换为JSON格式,以便以后可以在Javascript中使用此JSON来构建HTML表。但是我的代码只是产生大量的空值,我还不明白为什么。$result = mysqli_query($con, "SELECT * FROM Customers"); $test = json_encode($result);…

有人在this bug附近吗?echo json_encode(array('url'=>'/foo/bar')); {"url":"/foo/bar"} 我使用Zend_Json and Zend_Json_Expr以便我甚至可以在js对象中获取回调函数-但我无法获得…

所以这是我的PHP<?php include 'connect.php'; $sql = "SELECT name from startup_schema"; $result = mysqli_query($mysqli, $sql) or die("Error in Selecting " …

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » 如果只有3个Ajax返回中的2个是Json,则JQuery无法正常工作 – php程序员分享
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们