Сведения о вопросе

Ислам

01:24, 2nd August, 2020

Теги

jQuery   HTML   JSON    

JQuery, JSON, iframe и кавычки вместе не работают?

Просмотров: 312   Ответов: 4

Произвожу upload файла в iframe(по другому вроде никак). В качестве ответа генерирую JSON объект где одно из полей это строчка с html описывающим ошибку.

Вопрос: Как мне забрать этот ответ от сервера его не побив?



Когда использую .text() из JQuery все теги удаляются.

Когда использую .html() из JQuery он «исправляет» html и после этого не возможно сделать десериализацию JSON потому-что кавычки теряют экранирующий символ. получаем Invalid JSON.



  Сведения об ответе

ASSembler

03:31, 23rd August, 2020

Попробуйте на сервере перед отправкой клиенту HTML кодировать urlencode, на клиенте javascript’ом декодируйте через decodeURI или unescape.


  Сведения об ответе

$DOLLAR

19:37, 15th August, 2020

Как вы генерите и получаете json?
Для вот таких данных
{"html":"<a href=\"#\">!!!<\/a>"}

с использованием getJSON все отображается нормально


<html>

<head>

<script type="text/javascript" src="http://yandex.st/jquery/1.4.2/jquery.min.js"></script>

<script type="text/javascript">

$(document).ready(function() {

	$.getJSON('j.php', '', function (data) {$('body').html(data.html);});

}

);

</script>

</head>

<body>

</body>

</html>


  Сведения об ответе

screen

08:38, 18th August, 2020

отдавать в iframe не json, а полноценный html + javascript:
<script>parent.callback_func({json: "data"});</script>


  Сведения об ответе

+-*/

20:36, 6th August, 2020

innerHTML?


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться