Экранирующие персонажи ведут себя по-разному

Abraham Gnanasingh спросил: 31 июля 2018 в 09:53 в: javascript

PFB фрагмент кода и он компилируется в <div data-value="{&quot;name&quot;:&quot;Within" a="" month"}="">Within a month</div>. Как я могу заставить его работать правильно с помощью JavaScript?

var a = JSON.stringify({"name": "Within a month"});
document.body.innerHTML = '<div data-value=' + a + '>Within a month</div>';

2 ответа

Nitin Dhomse ответил: 31 июля 2018 в 10:06

Расшифруйте вашу строку следующим образом.

var parser = new DOMParser;
var decodedValue = parser.parseFromString("{&quot;name&quot;:&quot;Within&quot;}", 'text/html').body.textContent;
console.log(decodedValue);
Evan Knowles ответил: 31 июля 2018 в 10:07

Вам нужно добавить дополнительные кавычки после data-value - попробуйте вместо этого:

var a = JSON.stringify({"name": "Within a month"});
document.body.innerHTML = '<div data-value=\'' + a + '\'>Within a month</div>';