我在JavaScript字符串赋值语句中面临一些奇怪的问题。 'markup'是一个字符串变量,其数据为HTML标记 -
var markup= "<div id="element" ><link href="http://test.com/css/web.css" rel="stylesheet"><div class="testClass"><span></span></div>";
this.el.dom.innerHTML = markup;
在IE中,将此字符串分配给ExtJs元素的innerHTML后,它会删除所有like和样式标记,this.el.dom.innerHTML包含以下值 -
"<div id="element" ><div class="testClass"><span></span></div>";
任何人都可以帮我弄清楚为什么会这样吗?
注意:分配声明在Firefox和Chrome中运行文件。
编辑:标记变量作为参数传递给函数,因此我认为我无法控制更改引号。
答案 0 :(得分:0)
尝试:
var markup= '<div id="element" ><link href="http://test.com/css/web.css" rel="stylesheet"><div class="testClass"><span></span></div>';
您使用不同的引号保持打开和关闭语句,因此请使用单个刻度标记包裹整个字符串,以便您可以继续使用“整个字符串中的标记。”
答案 1 :(得分:0)
试
var markup= '<div id="element" ><link href="http://test.com/css/web.css" rel="stylesheet"><div class="testClass"><span></span></div>';
this.el.dom.innerHTML = markup;
答案 2 :(得分:0)
你应该写
var markup= "<div id=\"element\" ><link href=\"http://test.com/css/web.css\" rel=\"stylesheet\"><div class=\"testClass\"><span></span></div>";
this.el.dom.innerHTML = markup;