如果数据已转义为单引号,则无法在jqgrid中显示网格数据

时间:2011-03-09 18:09:14

标签: jqgrid

返回的JSON数据:

{
    "page": "1",
    "total": 1,
    "records": "1",
    "rows": [
        {
            "id": "10142",
            "cell": [
                "10142",
                "Hello",
                "c:\\goodies\'",
                "singlequoteissue" 
            ] 
        } 
    ]
}

有问题的字符串(即最后的'')

"c:\\goodies\'"

jqgrid在没有单引号的情况下工作正常......

提前致谢。

马丁

2 个答案:

答案 0 :(得分:0)

使用从服务器接收的JSON数据是错误的。您可以验证任何JSON数据here。在http://www.json.org/上描述了哪些字符必须被转义(只有“和”,并且可以使用反斜杠进行转义。'字符在列表中没有。所以你应该将数据修复为

{
    "page": "1",
    "total": 1,
    "records": "1",
    "rows": [
        {
            "id": "10142",
            "cell": [
                "10142",
                "Hello",
                "c:\\goodies'",
                "singlequoteissue" 
            ] 
        } 
    ]
}

我建议您不要在服务器上实现手动JSON序列化并使用某些标准函数(或库)。在这种情况下,你不会遇到这样的问题。

答案 1 :(得分:0)

发现问题,JSON字符串无效应该是“c:\ goodies”而不是