Questions tagged «innerhtml»

innerHTML是DOM节点的属性,用于获取或设置HTML元素的内部HTML代码。它通常在Javascript中用于动态更改或读取页面。


19
可以使用innerHTML插入脚本吗?
我想一些脚本加载到使用页面innerHTML上<div>。脚本似乎已加载到DOM中,但从未执行(至少在Firefox和Chrome中)。将脚本插入时,是否可以执行脚本innerHTML? 样例代码: <!DOCTYPE html> <html> <body onload="document.getElementById('loader').innerHTML = '<script>alert(\'hi\')<\/script>'"> Shouldn't an alert saying 'hi' appear? <div id="loader"></div> </body> </html> 运行代码段隐藏结果展开摘要

5
Angular 2-innerHTML样式
我从HTTP调用中获取了很多HTML代码。我将HTML块放入变量中,并使用[innerHTML]将其插入到我的页面中,但是我无法为插入的HTML块设置样式。有人对我如何实现这一目标有任何建议吗? @Component({selector: 'calendar', template: '<div [innerHTML]="calendar"></div>', providers:[HomeService], styles: [` h3 {color:red;} `}) 我要设置样式的HTML是变量“ calendar”中包含的块。
170 angular  innerhtml 

6
Javascript-将HTML附加到不带innerHTML的容器元素
我需要一种无需使用innerHTML即可将HTML附加到容器元素的方法。我不想使用innerHTML的原因是因为当使用这种方式时: element.innerHTML += htmldata 它的工作原理是先替换所有html,然后再添加旧html和新html。这不好,因为它会重置动态媒体,例如嵌入式Flash视频... 我可以通过这种方式做到这一点: var e = document.createElement('span'); e.innerHTML = htmldata; element.appendChild(e); 但是这种方式的问题在于,我现在不想在文档中有多余的span标签。 那怎么办呢?谢谢!

6
nodeValue vs innerHTML和textContent。如何选择?
我正在使用普通js来更改label元素的内部文本,但是我不确定应该基于什么理由使用innerHTML或nodeValue或textContent。我不需要创建新节点或更改HTML元素或其他任何内容,只需替换文本即可。这是代码示例: var myLabel = document.getElementById("#someLabel"); myLabel.innerHTML = "Some new label text!"; // this works myLabel.firstChild.nodeValue = "Some new label text!"; // this also works. myLabel.textContent = "Some new label text!"; // this also works. 我浏览了jQuery源代码,它只使用一次nodeValue,但是多次使用innerHTML和textContent。然后,我发现此jsperf测试表明firstChild.nodeValue明显更快。至少这就是我的解释。 如果firstChild.nodeValue快得多,那么有什么收获呢?是否得到广泛支持?还有其他问题吗?

13
是否可以在不破坏后代事件监听器的情况下附加到innerHTML?
在以下示例代码中,我将onclick事件处理程序附加到包含文本“ foo”的范围。该处理程序是一个匿名函数,会弹出一个alert()。 但是,如果我分配给父节点的 innerHTML,则此onclick事件处理程序将被销毁-单击“ foo”将无法弹出警报框。 这个可以解决吗? <html> <head> <script type="text/javascript"> function start () { myspan = document.getElementById("myspan"); myspan.onclick = function() { alert ("hi"); }; mydiv = document.getElementById("mydiv"); mydiv.innerHTML += "bar"; } </script> </head> <body onload="start()"> <div id="mydiv" style="border: solid red 2px"> <span id="myspan">foo</span> </div> </body> </html>

20
执行插入.innerHTML的<script>元素
我有一个脚本,可使用将某些内容插入到元素中innerHTML。 内容例如可以是: &lt;script type="text/javascript"&gt;alert('test');&lt;/script&gt; &lt;strong&gt;test&lt;/strong&gt; 问题是&lt;script&gt;标签内的代码无法执行。我用谷歌搜索了一下,但是没有明显的解决方案。如果我使用jQuery插入内容,$(element).append(content);则脚本部分eval在被注入DOM之前就已经存在。 有人能执行所有&lt;script&gt;元素的代码片段吗?jQuery代码有点复杂,所以我无法真正弄清楚它是如何完成的。 编辑: 通过查看jQuery代码,我设法弄清楚了jQuery是如何做到的,从而产生了以下代码: Demo: &lt;div id="element"&gt;&lt;/div&gt; &lt;script type="text/javascript"&gt; function insertAndExecute(id, text) { domelement = document.getElementById(id); domelement.innerHTML = text; var scripts = []; ret = domelement.childNodes; for ( var i = 0; ret[i]; i++ ) { if ( scripts &amp;&amp; nodeName( ret[i], "script" ) &amp;&amp; …

19
无法将属性“ innerHTML”设置为null
为什么会出现错误或Uncaught TypeError:无法将属性'innerHTML'设置为null?我以为我了解innerHTML并可以使用它。 &lt;!DOCTYPE HTML&gt; &lt;html&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&gt; &lt;title&gt;Untitled Document&lt;/title&gt; &lt;script type ="text/javascript"&gt; what(); function what(){ document.getElementById('hello').innerHTML = 'hi'; }; &lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;div id="hello"&gt;&lt;/div&gt; &lt;/body&gt; &lt;/html&gt;


11
使用Javascript添加内联样式
我正在尝试将此代码添加到动态创建的div元素中 style = "width:330px;float:left;" 创建动态的代码div是 var nFilter = document.createElement('div'); nFilter.className = 'well'; nFilter.innerHTML = '&lt;label&gt;' + sSearchStr + '&lt;/label&gt;'; 我的想法是在之后添加样式,&lt; div class="well"但我不知道该怎么做。


7
jQuery html()与innerHTML
我是否可以完全依赖jQuery的html()行为方式与相同innerHTML?innerHTML和jQuery的html()方法之间有什么区别吗?如果这些方法都相同,是否可以使用jQuery的html()方法代替innerHTML? 我的问题是:我正在设计的页面上工作,这些页面包含表格,并且在JavaScript中,该innerHTML属性用于动态填充它们。 该应用程序在Firefox上运行正常,但是Internet Explorer会引发错误:unknown runtime exception。我使用jQuery的html()方法,而IE的错误已消失。但是我不确定它是否适用于所有浏览器,也不确定是否innerHTML用jQuery的html()方法替换所有属性。 非常感谢。

9
使用JavaScript在div中添加/删除HTML
我希望能够将多个行添加到div并删除它们。我在页面顶部有一个“ +”按钮,用于添加内容。然后,每行右侧都有一个“-”按钮,用于删除该行。我只是无法弄清楚此示例中的javascript代码。 这是我的基本HTML结构: &lt;input type="button" value="+" onclick="addRow()"&gt; &lt;div id="content"&gt; &lt;/div&gt; 这是我想在内容div中添加的内容: &lt;input type="text" name="name" value="" /&gt; &lt;input type="text" name="value" value="" /&gt; &lt;label&gt;&lt;input type="checkbox" name="check" value="1" /&gt;Checked?&lt;/label&gt; &lt;input type="button" value="-" onclick="removeRow()"&gt;

5
createElement优于innerHTML的优势?
在实践中,相对于innerHTML而言,使用createElement有何优势?我之所以问是因为,我坚信使用innerHTML在性能和代码可读性/可维护性方面会更有效,但是我的团队成员已经决定使用createElement作为编码方法。我只是想了解createElement如何更有效。

2
如何在innerHTML内获取click事件?
我有一个动态创建的布局: for (let i = 1; i &lt; 10; i++) { document.querySelector('.card-body').innerHTML += `&lt;div class="row" id="img_div"&gt; &lt;div class="col-12 col-sm-12 col-md-2 text-center"&gt; &lt;img src="http://placehold.it/120x80" alt="prewiew" width="120" height="80"&gt; &lt;/div&gt; &lt;div id="text_div" class="col-12 text-sm-center col-sm-12 text-md-left col-md-6"&gt; &lt;h4 class="name"&gt;&lt;a href="#" id="title` + i + `"&gt;Name&lt;/a&gt;&lt;/h4&gt; &lt;h4&gt; &lt;small&gt;state&lt;/small&gt; &lt;/h4&gt; &lt;h4&gt; &lt;small&gt;city&lt;/small&gt; &lt;/h4&gt; &lt;h4&gt; &lt;small&gt;zip&lt;/small&gt; …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.