action怎么获得下拉列表中被选中的值

根据产品名称 自动产生相对应的编号 先要得到选中的产品名称 然后根据名称进行查询 请问怎么在action中得到下拉框选中得值

1.假如你的Action叫 ProductAction, 有一个属性 pName,并且有对应的set get 方法
private String pName;
public String getpName() {
return pName;
}
public void setpName(String pName) {
this.pName = pName;
}

2.页面上那个产品名称的下拉框
<select name="pName">
<option value='宝宝金水'>宝宝金水</options>

</select>

3.当页面通过form提交数据到 ProductAction时,struts2会自动通过 pName 进行匹配,如果发现ProductAction有 setpName()方法,并且页面有pName这个控件值,struts2自动将页面上的'宝宝金水'值付给 ProductAction的 pName属性。

4.然后你就可以通过 getpName() 获取到值。追问

我下拉列表的值是通过动态获取的 我现在需要在页面加载的时候得到下拉框中选中的值并根据他的名字获得对应的编号,并在编号的文本框显示出来

追答

你问的这个问题,是页面处理的问题,和Action无关。

追问

那请问怎么处理呢  下拉列表代码如下

 

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-07-12
<select name="s1">
<option value="11">test1<option>
<option value="22">test2<option>
</select>

request.getParameter("s1");

即可获得你选中的下拉列表的值 value=11 or value=22追问

action我这样写获得是null

追答

jsp

test1
test2

action
String s1=request.getParameter("s1");
System.out.println("---test---"+s1);
return "success";
-------
成功

第2个回答  2012-07-12
你既然说action我就理解为你用的struts2框架,那只要你把select里面的值用sturts2的标签,那表单提交他自动就会获取追问

我用的是struts2+hibernate 现在我要取得前台jsp页面下拉框中被选中得值,请问怎么取得呢

追答

你假如已经写好了个user类,你要获取user里面的name,那你在<input type="select" name="user.name"就可以了

追问

我提问的是 action中怎么获得下拉列表中被选中得值

追答

就是这样获取的,你这样区name,struts2会通过反射到action,你自己看不懂我也没办法

追问

你这是在页面获得action里面的值 OK?? 《input type="select" name="user.name"》
user能直接获得?? 在action里面必须通过session.put(key,value) 我现在是想通过action获得jsp页面下拉框的值

追答

ok。你认真学了struts2么?那样不能传值?你知道struts2有反射机制么?学好了再来犟。

第3个回答  2012-07-12
在Action中,这样写
我假如你页面显示的值为上面那位说的。

private User user;
set get 方法省略!

public userAction(){
//直接使用就可以了
String name=user.getName();

}
这个action为你页面提交的action!本回答被网友采纳
相似回答