jQuery.parseJSON 传递更多数据时停止工作

jQuery.parseJSON stop working when passed more data

我有一个脚本可以查询数据库并用结果回显 json 代码。
javascript 使用 jQuery.parseJSON 方法获取并存储在变量中,然后填充文本框以执行自动完成。
如果我 return 在数据库查询中少于 30 行,一切都会完美无缺。
当我向它传递更多数据时,jQuery.parseJSON 方法似乎失败了。

如何更改代码以使其能够解析更多数据?

感谢您的帮助。

JSON代码:

{
    "display":true,
    "url":"http://project-url",
    "autoComplete":
    [
        {
            "value":"1",
            "desc":"Ford",
            "model":"Edge",
            "label":"1 Ford Edge"
        },
        {
            "value":"2",
            "desc":"Toyota",
            "model":"Camry",
            "label":"2 Toyota Camry"
        },
        {
            "value":"3",
            "desc":"Honda",
            "model":"Accord",
            "label":"3 Honda Accord"
        },
        {
            "value":"4",
            "desc":"Honda",
            "model":"Civic",
            "label":"4 Honda Civic"
        }
    ]
}

Javascript代码:

var data = $.parseJSON(jsonVar);

$('#value-input').autocomplete(
{
    source: data.autoComplete,
    minLength: 3,
    select: function(event, ui)
    {
        $('#desc-input').val(ui.item.desc);
    }
});

没有任何代码我们只能做假设,在那种情况下 Jquery.ParseJSON 支持更大的数据,可能是 json 的问题,也许是某些字符破坏了 json 之类的这与 returns 数据库的行大小无关。

您可以验证 json here

你能包括产生错误的 json 吗?或者您可以验证我上面提供的 link 中的 json 以检查问题是否出在 json?

问题是数据的其中一个元素带有断线。数字 2,在 valuedesc 元素之间换行。这是一种有效的 JSON 格式,但 jQuery 出于某种原因不喜欢它。我只是删除了断线,它 works.Thank 你 Ronald !!

{
    "display":true,
    "url":"http://project-url",
    "autoComplete":
    [
        {
            "value":"1",
            "desc":"Ford",
            "model":"Edge",
            "label":"1 Ford Edge"
        },
        {
            "value":"2

            ",
            "desc":"Toyota",
            "model":"Camry",
            "label":"2 Toyota Camry"
        },
        {
            "value":"3",
            "desc":"Honda",
            "model":"Accord",
            "label":"3 Honda Accord"
        },
        {
            "value":"4",
            "desc":"Honda",
            "model":"Civic",
            "label":"4 Honda Civic"
        }
    ]
}