我有一个名称列表,并将它们用作json对象的键,但是,有时,键可能在其中包含双引号,如下所示:

var parts = {
    Expando Sleeve 1/4": [
    {
        id:"45", name:"TEST REPORT", partID:"4"
    },
    {
        id:"15", name:"01-077512", partID:"4"
    }]
};


所以,我在这里面临的问题是我要使用的名称是Expando Sleeve 1/4",但是我将其存储在页面上的隐藏输入元素中,如下所示:<input type="hidden" value="Expando Sleeve 1/4"" name="partName" />

因此,我进行了ajax调用,而不是使用隐藏的输入元素的值...像这样将响应值添加到全局parts数组...

var $val = $('input[name="partName"]').val();

if (!parts.hasOwnProperty($val))
    parts[$val] = [];

parts[$val].push(response[$val]);


这里的问题是,它将密钥添加到json对象parts中,如下所示:

parts[Expando Sleeve 1/4\"]代替部件[Expando Sleeve 1/4"]。因此,我在努力如何在此处取消转义双引号并设置如下键:Expando Sleeve 1/4"

我该怎么做?

最佳答案

在JSON中使用双引号HTML字符&quot;

var parts = {
    "Expando Sleeve 1/4&quot;": [
    {
        id:"45", name:"TEST REPORT", partID:"4"
    },
    {
        id:"15", name:"01-077512", partID:"4"
    }];
};

07-26 08:09