js/jsp 下拉框取值问题 高手请进~

是这样的,我现在做一个jsp产品报价页面,要实现的功能是页面上有一个下拉框,例如<select....><option>萝卜<option/>...<select/>,下... 是这样的,我现在做一个jsp产品报价页面,要实现的功能是页面上有一个下拉框,例如<select ....><option>萝卜<option/>...<select/>,下拉框是检索数据库自动生成的,其中“萝卜”是用rs.getString("shucai")生成的。现在我想要实现如下功能:只要选中某个选项,例如“萝卜”,用一个文本表单动态显示出萝卜的价格。 我知道一种方法是在option的value中加价格,然后用js去实现。但是问题是,我最后需要将“萝卜”在提交的时候插入到表中,如果采用这种方法,将导致得不到“萝卜”值,插入数据表的变成萝卜的价格了。并且,我不仅仅只要得到萝卜在表中相应的价格,还要得到萝卜在表中相对应的另一个字段内容,并且和价格一样,也要动态显示。 我对js几乎不熟悉,全凭感觉看代码。请高手帮帮忙,按我的意思写个简单点的实例,多加点注释,谢谢啦~
neo 你好,我看过你的答案了,可能你没完全明白我的意思。“萝卜”是<%=rs.getString("shucai")%>得到的。按你的做法,那就是要<%=%><%=%>。这两个中间的空格要怎么去体现。另外是,我其实有5个商品下拉框,我需要把5个价格加起来,这个如何弄?还有就是,按你的做法,插入数据表的值是不是变成了“萝卜 10.5”?我只要插入“萝卜”就可以了。谢谢你为我解答~再帮我完善下吧
展开
 我来答
百度网友83d923b
2010-03-29 · TA获得超过1448个赞
知道答主
回答量:45
采纳率:0%
帮助的人:88.4万
展开全部
何必呢
你完全可以生成<option value="萝卜 10.5">萝卜</option>这样的格式啊
jsp获取的时候用split分割一下就好了
至于显示到文本框中,可以用JS在split以后重新赋值就可以了,比如:
<select name="shucai" onchange='document.getElementById("price").value=this.value.split(" ")[1]'>
<option value='萝卜 10.5'>萝卜</option>
<option value='白菜 11.5'>白菜</option>
<option value='西红柿 12.5'>西红柿</option>
</select>
<input type="text" name="price" id="price">

空格直接输出就好了
<%
//这里是jsp的while
while(rs.next()){
%>
<option value='<%=rs.getString("shucai")%> <%=rs.getString("jiage")%>'><%=rs.getString("shucai")%></option>
<%
}
%>
提交后JSP获取的时候用request.getParameter(select的name).split(" ")[0]这个就是蔬菜名称了

至于5个下拉框。。。
<script language="JavaScript">
function a(){
total = parseFloat(document.getElementById("s1").value.split(" ")[1])+
parseFloat(document.getElementById("s2").value.split(" ")[1])+
parseFloat(document.getElementById("s3").value.split(" ")[1])+
parseFloat(document.getElementById("s4").value.split(" ")[1])+
parseFloat(document.getElementById("s5").value.split(" ")[1])

document.getElementById("total").value=total
}
</script>

<form>
<select name="s1" id="s1" onchange='a()'>
<option value='萝卜 10.5'>萝卜</option>
<option value='白菜 11.5'>白菜</option>
<option value='西红柿 12.5'>西红柿</option>
</select>
<select name="s2" onchange='a()'>
<option value='猪肉 15.5'>猪肉</option>
<option value='牛肉 16.5'>牛肉</option>
<option value='羊肉 17.5'>羊肉</option>
</select>
<select name="s3" onchange='a()'>
<option value='草鱼 20.5'>草鱼</option>
<option value='鲫鱼 21.5'>鲫鱼</option>
<option value='桂鱼 22.5'>桂鱼</option>
</select>
<select name="s4" onchange='a()'>
<option value='a 22.5'>a</option>
<option value='b 33.5'>b</option>
<option value='c 44.5'>c</option>
</select>
<select name="s5" onchange='a()'>
<option value='e 55.5'>e</option>
<option value='f 66.5'>f</option>
<option value='g 77.5'>g</option>
</select>
总价<input type="text" name="total" id="total">
</form>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式