SELECT tag size属性设置中的妖异现象求解。
<html>
<head>
<title>HTML表示</title>
<META http-equiv=Content-Type content="text/html; charset=SJIS">
<style>
</style>
</head>
<body >
<form id="Data" >
</form>
<!--<input type="hidden" >--> <!--<1>-->
</body>
script language="JavaScript"><!--
var fm = document.getElementById("Data");
var newObj = document.createElement("SELECT");
newObj.style.width="50px";
newObj.size=5;
fm.appendChild(newObj);
//if(newObj.tagName=="SELECT") newObj.focus(); //<2>
//alert(111); //<3>
-->
</script>
</html>
上述代码执行后,newObj.size=5 没有反应,IE上生成combbox 不是想要得listBox。
将<3>注释释放,弹出警告窗口后,listBox能正常生成。由此判断,SELECT在生成后,还需要其它事件发生后,才能正常设size属性。
将<3>注释恢复,<2>注释释放后,listBox不能正常生成。将<1>注释释放后,listBox才能正常生成。
问题是解决了,但是解决的方法太过妖异。不知道有什么可以理解的解决方法吗?