我需要使用javascript动态创建<br />
标记。
var br = document.createElement('br');
和
var br = document.createElement('<br />');
不起作用
第一个选项在页面上创建了一个<br>
标记,该标记未通过XHTML标准,无论如何都在这周围?
答案 0 :(得分:10)
第一种方法不需要传递XHTML标准 - 你将标记与操作DOM混淆。
答案 1 :(得分:8)
第一个选项将起作用并且与XHTML无关,因为在解析文档之后执行DOM操作,因此在此时没有符合XHTML / HTML标准的XHTML / HTML标准。只要您不尝试将HTML输出到字符串,这种方法就可以正常工作。
答案 2 :(得分:7)
HTML和JavaScript的简单脚本,可在页面中动态添加br标记。
<SCRIPT language="javascript">
function add() {
//Create an input type dynamically.
var br = document.createElement("br");
var foo = document.getElementById("fooBar");
foo.appendChild(br);
}
</SCRIPT>
<INPUT type="button" value="Add" onclick="add()"/>
<span id="fooBar"> </span>
This text will go down every time you click on add button
答案 3 :(得分:1)
实际上,您的代码仍将验证您的JavaScript是否未完全验证,因为验证程序仅解析已处理的HTML代码,而不是JavaScript创建的动态代码。如果您关心,您也可以使用innerHTML
技巧,或document.createTextNode('<br />');
如果您想强制使用XHTML版本,但不建议这样做。 document.createElement('br');
完美无缺。
答案 4 :(得分:1)
这个问题与标记没有任何关系。传递给createElement的参数是元素名称,它不是标记的片段或其他任何东西,它不是XML,HTML,XHTML,或SGML或任何形式的标记。
createElement 方法返回一个DOM对象,没有标记,从来没有。
请注意,传递给浏览器的标记用于创建文档对象,从那时起,标记就无关紧要了。
答案 5 :(得分:0)
将<br>
附加到某个元素的末尾
document.getElementById("Target").innerHTML += "<br>"