搭建nas私有云:在javascript里的<option>为什么不能用for循环?

来源:百度文库 编辑:神马品牌网 时间:2024/03/28 17:58:19
我在javascript里用<option>做选择菜单,用for循环生成菜单,为什么显示不出来呢?
比如:
for(var i=0;i<3;i++){
<option > 1 </option>
<option > 2 </option>
<option > i </option>}
或者
for(var i=0;i<3;i++){
options[i]=1;}
都不行,请问这是为什么?该怎么用?

也可以用纯javascript解决..&_&

<select id=aa></select>

<script>
var a=document.getElementById("aa");
for(var i=0;i<10;i++){
a.options[i]=new Option('a'+(i+1),i);
}
</script>

在这里,使用new Option插入下拉框的子节点
类似于HTML: <option value='0'>a1</option><option value='1'>a2</option>...

而且更具有灵活性,特别对于批量操作...非常有用的..&_&

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<select>
<script>
for (var i = 0; i < 3; i++)
{
document.writeln("<option>" + i + "</option>")
}
</script>
</select>
</BODY>
</HTML>

<option>是html标签,非javascript关键字
得用document.write输出为html标签,并得用<select></select>包围。
options是javascript里的关键字
可用obj.options[obj.length]=new Option("1","1");
来定义新的option,obj是select的名字