由于需求需要需要做2个mutiply形的select一个表示可选分类listbox1一个标识已选分类listbox2可以通过button实现添加和删除(我是通过一下方法实现)function AddOption() { document.getElementById("ListBox2").appendChild(document.getElementById("ListBox1").options[document.getElementById("ListBox1").selectedIndex]); document.getElementById("ListBox1").removeChild(document.getElementById("ListBox1").options[document.getElementById("ListBox1").selectedIndex]); } function DeleteOption() { document.getElementById("ListBox1").appendChild(document.getElementById("ListBox2").options[document.getElementById("ListBox2").selectedIndex]); document.getElementById("ListBox2").removeChild(document.getElementById("ListBox2").options[document.getElementById("ListBox2").selectedIndex]); }同时需要将 已选分类listbox2 里的所有值回传到服务器(主要是要知道如何实现这个,下面的为我自己实现时候出现的问题,能够回答最好,不能回答也无所谓)在做回传的时候我碰到了一个问题就是如果通过javascript添加select的option后 for (i=0 ; i<document.getElementById("ListBox2").length;i++)这样遍历就会出异常而为什么出我不打清楚
2 回答
MMMHUHU
TA贡献1834条经验 获得超8个赞
在提交之前执行一下for循环,先把ListBox2的所有项的selected设置为true,然后再执行submit事件,这样就可以把所有ListBox2的项都提交到服务器端了
白板的微信
TA贡献1883条经验 获得超3个赞
for (i=0 ; i<document.getElementById("ListBox2").length;i++)
你是想遍历select还是options?
如果想遍历options,应该是
for (i=0 ; i<document.getElementById("ListBox2").options.length;i++)
你遍历这些options的时候,把他们的值拼凑起来,比如用逗号隔开,然后放在一个hidden里面
添加回答
举报
0/150
提交
取消