由于某些原因,AJAX响应的提取部分中缺少所有打开的HTML标记。请参阅下面的代码和警告框图像。有谁知道为什么会这样?
alert(data);
json_response = $(data).find('div#json').text();
alert(json_response);
答案 0 :(得分:0)
使用
json_response = $(data).find('div#json').html();
答案 1 :(得分:0)
由于某些原因,您在HTML中使用了JSON,但浏览器的HTML解析器并不了解JSON,因此它将JSON中的HTML视为文档的一部分。由于斜杠是(不必要的)转义它只识别开头而不是结束标签,因为你使用.text()
它会给你文本,但不会识别它识别的HTML元素。
为什么你的HTML里面有JSON?别这么做。
如果您认为必须这样,那么您需要HTML转义JSON:
<div><div id="json">{"twee": "<ol><li>pro</li></ol;li>hallo</li><>"}</div></div>