为什么我得到这个无效的解析?

时间:2021-01-28 12:59:03

标签: php json ajax sqlite

我有一个 Ajax 函数可以通过 php 加载所有列名及其值,如下所示:

<块引用>

PHP 端:

$res = $db->query($stmt);
$rsltz= array();
while ($row = $res->fetchArray(SQLITE3_ASSOC)) {
    foreach ($row as $colonne => $valeur) {
      $rsltz[$colonne] = isset($valeur) ? $valeur : ""; 
    }
}
header('Content-type: application/json');
echo (json_encode($rsltz));
<块引用>

AJAX 函数:

function jet(a,b,c){
$.ajax({
        type: 'POST',   
        cache: false,           
        url: 'builder.php',
        data:  { typ:a, lg:b ,menu:c},
         success: function(result) { 
             if(typeof(result) === "string") {
                $('#par').after(result);
              } else {
                //JSON hier comes a loop to display key=>val
                var pars = JSON.parse(result); 
             $('#par').after(pars.datasrc);
              }          
        },
        error: function (jqXHR, textStatus, errorThrown) {
        alert(jqXHR+'\n'+textStatus+'\n'+ errorThrown);
        }
});
}

我有这个错误: enter image description here

这里是 json.encoded 结果:

{"id":"510","menu":"regis","taketo":"regis1","auth":"ALL"}

我非常感谢任何帮助☺。

1 个答案:

答案 0 :(得分:1)

我们不必重新解析已经解析的内容!响应(Ajax 函数中的结果)已被解析。所以就按原样使用它:

--first-parent main feature

必须替换为

var pars = JSON.parse(result); 
$('#par').after(pars.datasrc);

谢谢各位。