ExtJS,在json obj的文本区域中显示脚本标记

时间:2010-08-12 11:14:00

标签: javascript json extjs

我想在json obj中以纯文本显示脚本标记。

用户在文本区域中输入一些文本,文本包含<Script>。我希望用户能够做到这一点。 使用json将表单提交回服务器进行一些处理,返回的json包含文本区域的<Script>标记。我希望以纯文本显示它而不是尝试执行它。 ExtJS在值上调用eval并抛出错误“无效字符”。

json:

{"data":{"SourceFormat":"TAGS","SourceValue":"<IFRAME SRC=\"example.com\" WIDTH=300 HEIGHT=250 MARGINWIDTH=0 MARGINHEIGHT=0 HSPACE=0 VSPACE=0 FRAMEBORDER=0 SCROLLING=no BORDERCOLOR='#000000'>\r\n\r\<SCRIPT language=\"JavaScript1.1\" SRC=\"example.com;abr=!ie;\">\r\n\r\n</SCRIPT>\r\n\r\n<NOSCRIPT>\r\n\r\n<A HREF=\"example.com=$WEBMASTER/mnum=$MEDIANUMB/cstr=$CSTR/xsxdata=$XSXDATA/bnum=$BANNERNUM/optn=64?trg=http://example.com;abr=!ie4;abr=!ie5;sz=300x250;ord=$RANDOMNUM?\">\r\n\r\n<IMG SRC=\"http://example.com;abr=!ie4;abr=!ie5;sz=300x250;ord=$RANDOMNUM?\" BORDER=0 WIDTH=300 HEIGHT=250 ALT=\"Click Here\"></A>\r\n\r\n</NOSCRIPT>\r\n\r\n</IFRAME>","StartDateTime":"0001-01-01T00:00:00"}}

json viewer也扼杀了这个

1 个答案:

答案 0 :(得分:0)

您需要在显示数据之前对数据进行html编码。请参阅Ext.util.Format.htmlEncode