Отображение строки JSON в HTML с помощью JavaScript - PullRequest
0 голосов
/ 07 марта 2019

(Вопрос в самом конце) Я делаю вызов API для ebay и получаю файл JSON.Одним из полей значения этого JSON является HTML-код, написанный в виде простого текста.Мне нужно получить это и встроить в iframe.Теперь весь этот код динамически генерируется в javascript на основе нажатий кнопок на экране.Моя проблема заключается в том, что код, который я пишу, не полностью отображает выполненный необработанный текстовый код HTML.

Пример строки JSON

"<font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" style=\"font-family: Arial;\"><font rwr=\"1\" style=\"font-family: Arial;\"><div style=\"font-size: 14pt;\"><br><div style=\"font-size: 14pt;\"><font face=\"Georgia\"><b style=\"font-size: 14pt;\">A Grade 9/10&nbsp;<\/b><font size=\"4\">-&nbsp;<\/font>this is excellent condition, minor wear or light scratches.<\/font><\/div><div style=\"font-size: 14pt;\"><font face=\"Georgia\"><b style=\"font-size: 14pt;\">B Grade 8/10&nbsp;<\/b><font size=\"4\">-&nbsp;<\/font>may come with minor discoloration / scratches / minor dings<\/font><\/div><div style=\"font-size: 14pt;\"><font face=\"Georgia\"><b style=\"font-size: 14pt;\">C Grade 6/10<\/b><font size=\"4\">&nbsp;-&nbsp;<\/font>this is generally for people who'd want to save a lot of money and **doesn't**......

Мой код:

var html = "<iframe srcdoc = '"+Data+"'></iframe>";

Этозавершается, когда он встречает (') в «не» (выделено жирным шрифтом в строке JSON выше).

Я также пытался

var html = '<iframe srcdoc = \"'+Data+"\'><iframe>';

, который отображает пустой фрейм.Также, когда я зарегистрировал «Данные» и проверил в журнале консоли, ни одна из двойных кавычек в строке JSON не была экранирована.

Как мне выполнить этот простой текстовый HTML-код из файла JSON, который был выполнен и отображен в iframe?писать в JavaScript?Я надеюсь, что этот вопрос имеет смысл.Спасибо.

1 Ответ

0 голосов
/ 07 марта 2019

Если вы хотите показать свой код (который не является JSON) на дисплее, просто сделайте:

const json_to_display = "<font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" size=\"4\" style=\"font-family:Arial\"><font rwr=\"1\" style=\"font-family: Arial;\"><font rwr=\"1\" style=\"font-family: Arial;\"><div style=\"font-size: 14pt;\"><br><div style=\"font-size: 14pt;\"><font face=\"Georgia\"><b style=\"font-size: 14pt;\">A Grade 9/10&nbsp;<\/b><font size=\"4\">-&nbsp;<\/font>this is excellent condition, minor wear or light scratches.<\/font><\/div><div style=\"font-size: 14pt;\"><font face=\"Georgia\"><b style=\"font-size: 14pt;\">B Grade 8/10&nbsp;<\/b><font size=\"4\">-&nbsp;<\/font>may come with minor discoloration / scratches / minor dings<\/font><\/div><div style=\"font-size: 14pt;\"><font face=\"Georgia\"><b style=\"font-size: 14pt;\">C Grade 6/10<\/b><font size=\"4\">&nbsp;-&nbsp;<\/font>this is generally for people who'd want to save a lot of money and **doesn't**......";

document.getElementById(elementWhereToDisplay).innerHTML = json_to_display; //This will put your code on the element you want(elementWhereToDisplay);

Между ними вы можете использовать `` или '' или '' для записи строк, первыйодин позволит вам сделать это в несколько строк.

Надеюсь, я хорошо это понял, и это сработает: D

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...