JSON,语法错误:意外令牌I(...)

时间:2015-10-17 22:22:32

标签: javascript json

我有一个这样的js-function,它将数据发送到文件,其中包含一个函数,该函数发回JSON响应:

function deleteCategory(id){
        console.log(id);
        $.ajax({
                    url: '<?php echo $cfg['options']['siteurl']; ?>/gears/ajax.deletePkgCatAsideMenu.php',
                    type: 'POST',
                    dataType: 'JSON',
                    data: {idItem:id},
                    success: function(data) {
                        console.log(data);
                        if (data.type=='error') {
                            notify(data.type, data.type, data.text);
                        } else{
                            document.location.reload();
                        }
                    },
                    error: function(v1,v2,v3) {
                        alert('Ошибка!\nПопробуйте позже.');//in english it will be: alert('Error!\nTry again later.');
                        console.log(v1,v2,v3);
                    }
                });
    }

在该文件的最后,将执行以下操作:

$q = 'DELETE FROM `pkg_cat_aside_menu` WHERE pkg_cat_ddlist_id='.$idItem;
    $db->query($q);

    exit(json_encode(array('type'=>'ok','text'=>'Удаление произведено!')));
//or in english: exit(json_encode(array('type'=>'ok','text'=>'Deleted!')));

这是一个回复文字:

"int(13) {"type":"ok","text":"\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u043e!"}"

错误语法错误:意外令牌i(...) 我认为,它发生了,因为我使用数据库(删除)执行操作,它响应已删除的记录号(13),并且已包含在json-respose中。如何解决?

1 个答案:

答案 0 :(得分:1)

int(13)让我觉得你的PHP代码前面有一个var_dump( $idItem );,这导致响应无效。