使用 ajax/php 将 JSON 对象解析为 javascript

辛查

我正在使用 JavaScript/AJAX,因此当用户从下拉菜单中选择“deal_name”时,将使用 showPartnerInfo 函数显示其他信息。这是 k1.php 文件中的相关片段:

function showPartnerInfo(str){

    if (str == "") {
        document.getElementById("pshipInfo").innerHTML = "";
        return;
    } else {
        var dealName = str;
        $.ajax({
                type: "GET",
                url: 'get_partnerInfo.php?q=',
                //dataType: 'JSON',
                data: {"q" : dealName},
                success: function(json){
                    //alert(data);
                    var data = JSON.parse(json);
                    document.getElementById("pshipInfo").innerHTML = data.tax;
                    //document.getElementById("pshipInfo").innerHTML = json[1];
                },
                error: function(){
                    alert("error");
                }
        });
    }
}
</script>
</head>
<body>
<?php
include ("session.php");
include ("navbar.php");
$taxID = "";
?>
<form style="margin-top: 60px" action="k1_2DB.php" method="post">
<div class="well">  
<h1>K1 - Tax Update</h1>
<?php        
    $query = "SELECT DISTINCT deal_name FROM tbl_deal";
    $result = mysqli_query($DBconnect, $query);
    if(mysqli_num_rows($result) > 0){
        echo "<select name='deal_name' onchange='showPartnerInfo(this.value);'>
              <option value=''>Select Investment</option>";
        while($row = mysqli_fetch_array($result)) {
            echo "<option value='$row[0]'>$row[0]</option>";   
        }
    }else{
       echo "<select name=''><option value=''>No Investments Found</option>";
    }

    echo "</select>";
?>

这是 get_partnerInfo.php 文件:

  <!DOCTYPE html>
    <html>
    <head>

</head>
<body>

<?php
include("config.php");
$q = $_GET['q'];

if (!$DBconnect) {
    die('Could not connect: ' . mysqli_error($DBconnect));
}

$pship_query = "SELECT tbl_deal.deal_name, tbl_partnership.pship_name, 
                    tbl_partnership.pship_taxID,            
                    tbl_partner.partner_name, 
                    tbl_deal.deal_tax_id 
                FROM tbl_deal 
                    INNER JOIN tbl_partnership 
                        ON tbl_deal.pship_ID = tbl_partnership.pship_ID 
                    INNER JOIN tbl_partner 
                        ON tbl_deal.partner_manag_ID = tbl_partner.partner_ID
                WHERE tbl_deal.deal_name = '".$q."'";
$result = mysqli_query($DBconnect,$pship_query);

$row = mysqli_fetch_array($result);

$myArray = array(
    "tax" => $row["pship_taxID"],
    "name" => $row["pship_name"], 
    "dealTax" => $row["deal_tax_id"],
    "parName" => $row["partner_name"]);
$json = json_encode($myArray);
echo $json;
mysqli_close($DBconnect);
?> 

</body>
</html>

当我运行上面的代码时,没有任何反应,我在控制台中收到以下错误:

VM245:1 Uncaught SyntaxError: Unexpected token < in JSON at position 0 at JSON.parse () at Object.success (k1.php:60) at u (jquery.min.js:2) at Object.fireWith [as resolveWith] (jquery.min.js:2) at k (jquery.min.js:2) at XMLHttpRequest。(jquery.min.js:2)

我已经看到了关于处理这个问题的其他答案(堆栈溢出和其他),但似乎没有任何帮助。需要注意的是,在开发者工具的网络选项卡下,get_PartnerInfo.php 的输出为:

  {"tax":"45666XA","name":"Daniels and Partners","dealTax":"SEA485","parName":"Harry Petre"}

如果我在 showPartnerInfo 函数中不使用 JSON.parse,则显示上述内容没有问题。似乎是将json对象转换为javascript有问题。有什么建议吗?

辛查

在 rickdenhaan 发表评论后,我从 get_partnerInfo.php 中取出了 html 和 body 标签,并将文本留在了 . 现在它可以正常工作了!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Javascript

将JSON字符串解析为JavaScript中的特定对象原型

来自分类Java

使用gson将json解析为java对象的问题

来自分类Java

将JSON解析为对象

来自分类Java

使用Jackson将列表或对象的JSON内容解析为List <A>

来自分类Java

使用POJO对象类将JSON解析为POJO对象列表

来自分类Dev

将json解析为ruby对象

来自分类Dev

使用LINQ将JSON解析为对象列表

来自分类Dev

使用Javascript将Clojure脚本解析为JSON

来自分类Dev

使用JQuery将JSON对象解析为数组

来自分类Dev

使用NewtonSoft JSON.net将JSON解析为C#对象

来自分类Dev

使用JSON.Net将JSON解析为父子对象

来自分类Dev

如何使用jq将JSON解析为单个嵌套对象?

来自分类Dev

使用Spray JSON将Spark DataFrame解析为JSON对象/数组的通用方法

来自分类Dev

将模型数据解析为JSON对象

来自分类Dev

如何使用Node将JavaScript文件解析为对象

来自分类Dev

如何将特殊的JSON格式解析为JavaScript对象?

来自分类Dev

使用Jackson将JSON解析为对象

来自分类Dev

将JSON解析为对象

来自分类Dev

无法将JSON解析为Javascript对象

来自分类Dev

在Android中使用Retrofit将JSON解析为对象模型

来自分类Dev

使用Python 3将Javascript解析为JSON

来自分类Dev

如何使用javascript将JSON对象处理为数组

来自分类Dev

如何使用Jackson将JSON对象键解析为整数?

来自分类Dev

将Json从API解析为Javascript

来自分类Dev

将 JSON 解析为对象

来自分类Dev

如何使用 jQuery 将树解析为 JSON 对象

来自分类Dev

使用 GSON 将 JSON 嵌套对象解析为 Java POJO

来自分类Dev

将 JSON 字符串解析为具有精确值的 javascript 对象

来自分类Dev

将 Javascript 对象解析为类似 JSON 的字符串,但使用单引号

Related 相关文章

热门标签

归档