[英]How to add this as html in page
这个数据正在接受ajax调用。 它应该是HTML。 如何在div中将其添加为html? 我认为字符以安全格式返回。 有没有办法通过javascript或php打印它?
\n \n\u003Cscript type=\u0022text\/javascript\u0022\u003E\nvar qid = 28;\n\n\u003C
\/script\u003E \n\n\u003Ca href=\u0022#\u0022 class=\u0022test\u0022\u003ETest\u003C
\/a\u003E\n \n\u003Cdiv class=\u0022findme view view-test-mode view-id-test_mode
view-display-id-page view-dom-id-1\u0022\u003E\n \n \n \n \u003Cdiv
class=\u0022questions\u0022\u003E\n \u003Ch1 class=\u0022question\u0022\u003EWhich of
the following proves or disproves a specific act through oral testimony based on
information gathered through the witness\u0027s five senses?\u003C\/h1\u003E
\n\t\u003Cdiv class=\u0022options\u0022\u003E\n\t\u003Cinput id=\u00221\u0022type=\u0022radio\u0022
name=\u0022answer\u0022 value=\u0022Circumstantial evidence.\u0022 \/\u003ECircumstantial
evidence.\u003Cbr\/\u003E\u003Cinput id=\u00222\u0022type=\u0022radio\u0022
name=\u0022answer\u0022 value=\u0022Corroborative evidence.\u0022 \/\u003ECorroborative
evidence.\u003Cbr\/\u003E\u003Cinput id=\u00223\u0022type=\u0022radio\u0022
name=\u0022answer\u0022 value=\u0022Direct evidence.\u0022 \/\u003EDirect evidence.\u003Cbr\/\u003E\u003Cinput id=\u00224\u0022type=\u0022radio\u0022
name=\u0022answer\u0022 value=\u0022Conclusive evidence.\u0022 \/\u003EConclusive
evidence.\u003Cbr\/\u003E\t\n\t\t\n\t\u003C\/div\u003E\n\t \u003C\/div\u003E\n \n
\n\t\n \u003Cdiv class=\u0022item-list\u0022\u003E\u003Cul class=\u0022pager\u0022\u003E
\u003Cli class=\u0022pager-previous first\u0022\u003E\u003Ca href=\u0022\/qengine
\/test?page=5\u0022 class=\u0022active\u0022\u003E\u2039\u2039\u003C\/a\u003E\u003C
\/li\u003E\n\u003Cli class=\u0022pager-current\u0022\u003E7 of 29\u003C\/li\u003E
\n\u003Cli class=\u0022pager-next last\u0022\u003E\u003Ca href=\u0022\/qengine\/test?page=7
\u0022 class=\u0022active\u0022\u003E\u203a\u203a\u003C\/a\u003E\u003C\/li\u003E\n\u003C
\/ul\u003E\u003C\/div\u003E\n \n \n \n\n \n \u003C!--Total: 29done : 7--\u003E\u003Ca
href=\u0022#back\u0022 class=\u0022back\u0022\u003EBack\u003C\/a\u003E|\u003Ca
href=\u0022#next\u0022 class=\u0022next\u0022\u003ENext\u003C\/a\u003E | \u003Ca
href=\u0022results\u0022 class=\u0022result\u0022\u003EEnd Test \u0026 Show Results\u003C
\/a\u003E\t\u003Cbr\/\u003E\u003Cbr\/\u003E\n\t\u003Cinput type=\u0022checkbox\u0022
name=\u0022mark\u0022 value=\u0022marked\u0022 class=\u0022mark\u0022\/\u003E Mark For
Review \n \n \n \n \n \n\u003C\/div\u003E
字符以转义的unicode格式返回。 您可以使用以下功能将其编码为UTF8:
function encode_utf8( s )
{
return unescape( encodeURIComponent( s ) );
}
例如:
encode_utf8( '\u003Cscript type=\u0022text\/javascript\u0022\u003E' ); -> '<script type="text/javascript">'
为了清理输入字符串(可以将其转换为HTML),您需要做4次搜索/替换(以我的计数),以使其更易于阅读。 没有特别的顺序:
.replace('\n', '') // Removes all encoded newline characters
.replace('\t', '') // Removes all encoded tab characters
.replace(/(?:\s+)?<(?:\s+)?/g, '<') // Removes any whitespace before or after a tag-start delimiter.
.replace(/(?:\s+)?>(?:\s+)?/g, '>') // Removes any whitespace before or after a tag-stop delimiter.
.replace(/\s+/g, ' ') // Replaces all instances of whitespace with a single space. Enhances readability.
完成这些操作后,您可以unescape
字符串并将其插入文档中的某个位置:
var normalizedData = data.replace('\n', '').replace('\t', '').replace(/(?:\s+)?<(?:\s+)?/g, '<').replace(/(?:\s+)?>(?:\s+)?/g, '>').replace(/\s+/g, ' ');
document.getElementById('someElement').innerHTML = unescape(normalizedData);
工作提琴 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.