使用javascript createElement创建一个?

时间:2011-01-11 04:45:28

标签: javascript html

我需要使用javascript动态创建<br />标记。

var br = document.createElement('br');

var br = document.createElement('<br />');

不起作用

第一个选项在页面上创建了一个<br>标记,该标记未通过XHTML标准,无论如何都在这周围?

6 个答案:

答案 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">&nbsp;</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>"