日期:2014-05-18  浏览次数:20662 次

这种下拉列表框Struts框架怎么得到值啊?
<%@   page   contentType= "text/html;   charset=GBK "   %>
<%@   taglib   uri= "/WEB-INF/struts-bean.tld "   prefix= "bean "   %>
<%@   taglib   uri= "/WEB-INF/struts-html.tld "   prefix= "html "   %>
<%@   taglib   uri= "/WEB-INF/struts-logic.tld "   prefix= "logic "   %>
<%@   taglib   uri= "/WEB-INF/struts-template.tld "   prefix= "template "   %>
<Script>

function   createOptions(){

sel1   =   document.form1.select1;
sel2   =   document.form1.select2;
var   num   =   sel1.selectedIndex;
if   (num   >   1)   {
var   option   =   new   Option(sel1.options[num].text);
var   item   =   sel2.options.length;
sel2.options[item]   =   option;
}
sel1.selectedIndex   =   10000;
}

function   delOptions()   {
var   num   =   document.form1.select2.selectedIndex;
if   (num> 1)
document.form1.select2.options[num]   =   null;
else
document.form1.select2.selectedIndex   =   10000;
}

</script>
<form   name= "form1 "   action= "dUOAction.do "   method= "POST "   >
<select   name= "select1 "   size= "5 "
onDblClick= "createOptions() ">
<option> 可选择项目   <option>
<option   value= "香蕉 "> 香蕉 <option   value= "葡萄 "> 葡萄
<option   value= "苹果 "> 苹果   <option   value= "梨子 "> 梨子
</select>
<input   type= "button "   value= "选择 "   onClick= "createOptions() ">
<select   name= "select2 "   size= "5 ">
<option> 选择项目   <option>
</select>
<input   type= "button "   value= "删除 "   onClick= "delOptions() ">
<input   type= "submit "   name= "button "   value= "提交 "/>
</form>


------解决方案--------------------
不明白你的意思!
------解决方案--------------------
直接去SELECT2可以取到值的,不过在选择项目中必须进行选择
------解决方案--------------------
select有个id的属性。要得到值好象用通过id名来得到控件值吧。你加一个id属性试试。
<select name= "select1 " id= "select1 " size= "5 " onDblClick= "createOptions() "> </select>
------解决方案--------------------
在 <Script> 代码createOptions()里
var option = new Option(sel1.options[num].text);/////这句出现的问题
改为:var option = new Option(sel1.options[num].text,sel1.options[num].value);
应改就可以了
------解决方案--------------------
这样是得不到值的,因为你select2也是一个下拉列表框,默认应该是选中第一个 <option> .但是你一个 <option> 的值为空。你当然得不到值了。有两种办法,一种是把select2 的multiple= "true ",然后每添加一个进来就把它设置为selected.第二中办法是在提交的时候自己构造成字符串,到了服务端再拆分。
------解决方案--------------------
在actionform 中加一个select1属性和它的geter/seter方法
------解决方案--------------------