如何删除“ 从我的Json使用JavaScript?


82

我正在尝试将json注入我的bone.js应用程序中。我的json有"每个报价。

有没有办法让我删除这个?
我在下面提供了一个示例:

[{"Id":1,"Name":"Name}]

3
为什么不首先阻止这种情况发生呢?目前,您根本没有JSON,但是看起来有点像它。
Lightness Races in Orbit

它正在编码引号。这是一个完全不同的问题,与Json不相关,但与ASP.NET MVC有关。我们可能要删除此帖子。
弗兰基(Frankie)2012年

Answers:


162

大概您将其包含在变量中并正在使用JSON.parse(data);。在这种情况下,请使用:

JSON.parse(data.replace(/"/g,'"'));

不过,您可能要修复JSON编写脚本,因为"在JSON对象中无效。


1
当我尝试此操作时,我看到我的js代码更改为:result.replace(/"/g,'"')
efirat

@kirlisakal您能解决这个问题吗?
turbo2oh

这行得通,但是如果数据具有以下某些值10"6 inch display呢?
Shyam Kansagra

然后,您可能需要修复JSON编写脚本。
Niet the Dark Absol

我在不是我的API中看到了这一点。为什么会生成"而不是"?(我认为这是一个
React

17

公认的答案是正确的,但是我对此感到麻烦。当我添加代码,检查调试器时,我发现它从

result.replace(/"/g,'"')

result.replace(/"/g,'"')

代替这个,我使用:

result.replace(/(&quot\;)/g,"\"")

通过这种表示法,它可以工作。


是的,它有效!但我需要自定义Session对象以解决此问题:(
muhammad tayyab

4
var data = $('<div>').html('[{&quot;Id&quot;:1,&quot;Name&quot;:&quot;Name}]')[0].textContent;

应该解析您需要的所有编码值。


那是最好的解决方案。我有很多逃生字符。这个招数没有
消失-Gultekin

0

以下对我有用:

function decodeHtml(html) {
    let areaElement = document.createElement("textarea");
    areaElement.innerHTML = html;

    return areaElement.value;
}

0

我在Notepad ++中使用了替换功能,并用&quot;(没有引号)替换了",结果是有效的json

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.