如何在FireFox中动态创建html元素(createElement)
2008-06-30 13:01
459 查看
IE Code:
<script type="text/javascript">
function add() {
var input = document.createElement("<input size=30 type=/"text/" name=/"extrachildren[]/">")
var br = document.createElement("<br>");
var br2 = document.createElement("<br>");
document.getElementById("children").insertBefore(br);
document.getElementById("children").insertBefore(br2);
document.getElementById("children").insertBefore(input);
}
</script>
上面代码在FireFox中不工作
请采用下面方法:
Code:
<script type="text/javascript">
function add()
{
var input = document.createElement('input');
input.setAttribute('size', '30');
input.setAttribute('type', 'text');
input.setAttribute('name', 'extrachildren[]');
var parent = document.getElementById('children');
parent.insertBefore(document.createElement('br'), null);
parent.insertBefore(document.createElement('br'), null);
parent.insertBefore(input, null);
}
</script>
IE有3种方式都可以创建一个元素:
1 document.createElement("<input type=text>")
2 document.createElement("<input>")
3 document.createElement("input")
Firefox只支持一种方式:
document.createElement("input");document.setAttribute(name,value);
------------
注: 在一个节点下增加子节点 IE也比Firefox下的方式要多.
IE:
1 node.insertBefore(Element)
2 node.insertAfter(Element)
3 node.appendChild(Element)
而Firefox仅支持 node.appendChild.
在IE里面,html元素如果可以作为容器,那么在document.createElement创建元素时是无法设置name属性的,比如:div,span,font等等。
相反不可以做为容器的,在用document.createElement创建元素时可以设置控件的name属性,比如:input,button,a,img等等
<script type="text/javascript">
function add() {
var input = document.createElement("<input size=30 type=/"text/" name=/"extrachildren[]/">")
var br = document.createElement("<br>");
var br2 = document.createElement("<br>");
document.getElementById("children").insertBefore(br);
document.getElementById("children").insertBefore(br2);
document.getElementById("children").insertBefore(input);
}
</script>
上面代码在FireFox中不工作
请采用下面方法:
Code:
<script type="text/javascript">
function add()
{
var input = document.createElement('input');
input.setAttribute('size', '30');
input.setAttribute('type', 'text');
input.setAttribute('name', 'extrachildren[]');
var parent = document.getElementById('children');
parent.insertBefore(document.createElement('br'), null);
parent.insertBefore(document.createElement('br'), null);
parent.insertBefore(input, null);
}
</script>
IE有3种方式都可以创建一个元素:
1 document.createElement("<input type=text>")
2 document.createElement("<input>")
3 document.createElement("input")
Firefox只支持一种方式:
document.createElement("input");document.setAttribute(name,value);
------------
注: 在一个节点下增加子节点 IE也比Firefox下的方式要多.
IE:
1 node.insertBefore(Element)
2 node.insertAfter(Element)
3 node.appendChild(Element)
而Firefox仅支持 node.appendChild.
在IE里面,html元素如果可以作为容器,那么在document.createElement创建元素时是无法设置name属性的,比如:div,span,font等等。
相反不可以做为容器的,在用document.createElement创建元素时可以设置控件的name属性,比如:input,button,a,img等等
相关文章推荐
- 如何在FireFox中动态创建html元素(createElement)
- document.createElement("input")动态创建html元素时checkbox和radio默认选中的问题
- js中使用document.createElement()创建按钮的时候如何让传递参数
- jquery createElement 动态创建元素
- 如何美化动态创建的编辑框的边框
- js动态创建html元素的方法
- VC++ 6.0如何创建与调用动态链接库
- Unity3d如何使用代码动态创建3dText
- SQLSREVER如何创建和使用动态游标
- 通过JS动态创建和删除HTML元素
- 如何创建免费的邮件服务器(To create free mail server )- Google Apps
- JAVA动态模块的设计实现以及如何通过newInstance()来创建带参的构造类实例
- JavaScript基础 创建节点 为节点添加属性 将节点挂载到body节点下 document.createElement setAttribute appendChild
- 如何动态创建控件
- 如何获得一个动态创建的textview的ID?
- Spring Boot如何动态创建Bean示例代码
- 【PB】如何创建一个动态的数据窗口对象?
- 简化document.createElement("div")动态生成层方法 (转)
- 如何创建一个动态的数据窗口对象
- angular 4.*如何创建动态组件