Как правильно устанавливать одинарные кавычки в data отрибуте?
Здравствуйте. Подскажите, пожалуйста, как правильно устанавливать одинарные кавычки в data отрибуте. В таком виде я получаю следующую ошибку:
SyntaxError: Unexpected end of JSON input В дальнейшем я планирую сделать следующие действия: let data = JSON.stringify(json); data = JSON.parse(data).cards; <div class="data" style="display: none;" data-dc-news-feed-preview-options='{"cards": "latest from the open", "content": "Watson vs Nicklaus in Golf's most memorable playoff"}' ></div> |
s24344,
заменить на ' |
var data='{"cards": "latest from the open", "content": "Watson vs Nicklaus in Golf\'s most memorable playoff"}'; var j = JSON.parse(data); alert(j.content); |
Dilettante_Pro,
в html с наклонной чертой не получится наверное ... ? :-? |
Цитата:
|
Ё-кавычка получается
<div class="data" style="display: none;" data-dc-news-feed-preview-options='{"cards": "latest from the open", "content": "Watson vs Nicklaus in Golf`s most memorable playoff"}' ></div> <script> var data= document.querySelector('.data').getAttribute('data-dc-news-feed-preview-options'); var j = JSON.parse(data); alert(j.content); </script> |
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> </head> <body> <div class="data" style="display: none;" data-dc-news-feed-preview-options='{"cards": "latest from the open", "content": "Watson vs Nicklaus in Golf's most memorable playoff"}'></div> </body> <script> var data = document.querySelector(".data").dataset.dcNewsFeedPreviewOptions; data = JSON.parse(data); alert(data.content); </script> </html> |
Вот такой финт ушами
<div class="data" style="display: none;" data-dc-news-feed-preview-options="{'cards': 'latest from the open', 'content': 'Watson vs Nicklaus in Golf\'s most memorable playoff'}" ></div> <script> var data= document.querySelector('.data').getAttribute('data-dc-news-feed-preview-options'); data=data.replace(/.'/gi,function(str) { return str[0] == "\\" ? str[1] : str[0] + '"'; }); var j = JSON.parse(data); alert(j.content); </script> :write: |
Либо заменять на html сущности как пишет рони, либо url кодирование json строки.
|
Всем спасибо за помощь.
|
Часовой пояс GMT +3, время: 09:11. |