给元素设置name的值方式1和方式2都只能在firefox ie8下有效,ie7 ie6下面没有作用当点击按钮时firefox 、ie8为1 而ie7 ie6下面为0 请问高手如何解决 。<html>
<head>
<script>
function init(){
//document.getElementById('chk').name='aa'; // 方式1
document.getElementById('chk').setAttribute('name','aa'); //方式2
}
function getNumber(){
alert(document.getElementsByName('aa').length)
}
</script>
</head><body onload="init()">
<input type="checkbox" id="chk"/>
<input type="button" value="按钮" onclick="getNumber()"/></body>
</html>
<head>
<script>
function init(){
//document.getElementById('chk').name='aa'; // 方式1
document.getElementById('chk').setAttribute('name','aa'); //方式2
}
function getNumber(){
alert(document.getElementsByName('aa').length)
}
</script>
</head><body onload="init()">
<input type="checkbox" id="chk"/>
<input type="button" value="按钮" onclick="getNumber()"/></body>
</html>
因为其不兼容。
建议使用document.getElementsByTagName('')
<head>
<script>
function init(){
//document.getElementById('chk').name='aa'; // 方式1
document.getElementById('chk').setAttribute('name','aa'); //方式2
}
function getNumber(){
alert(document.getElementById("chk").name)//这样你就知道问题出在哪了
}
</script>
</head><body onload="init()">
<input type="checkbox" id="chk"/>
<input type="button" value="按钮" onclick="getNumber()"/></body>
</html>
不过可以换一种思路。
就是删除元素,然后重新生成。
document.createElement('<input type="checkbox" id="chk" name="aa"/>')