在JSP页面中如何把下拉框的值和ID传递到action里去处理。下拉框是通过循环显示出来的,对应数据库中表字段

下面是关键代码:
<c:choose>
<c:when test="${servings.pingjia eq '未评估'}">
<select name="comment" id="comment">
<option value="未评估">未评价</option>
<option value="差评">差评</option>
<option value="中评">中评</option>
<option value="好评">好评</option>
</select>
</c:when>
<c:otherwise>${servings.pingjia}</c:otherwise>
</c:choose>
<a href="">保存</a>
我需要点击保存的时候把下拉框选定的值和ID一起提交,如何才能做到。ID是主键和下拉框处于同一张表,就是需要根据ID来修改。

用jquery 获得
下拉框select: var xxId=$('#comment).val();
但是下拉框的 <option value="0">未评价</option>
需要改成 ID 后面的汉字是用标签库取数据库
例子:
<!DOCTYPE html>
<html>
<head>
<script src="jquery-1.6.js"></script>
</head>
<script>
$(document).ready(function(){
$("#comment").change(function () {
alert( $("#comment").val());

});
});
</script>
<body>
<select name="comment" id="comment">
<option value="0">未评价</option>
<option value="1">差评</option>
<option value="2">中评</option>
<option value="3">好评</option>
</select>
</body>
</html>追问

我之前是用js提交的,代码如下,后来发现要么取不到值,要么乱码。
function saveMsg(){
var name=document.getElementById("comment").value;
alert(name);
document.myform.action="${pageContext.request.contextPath }/pingjia.action?serId="+${servings.ownerServingsId}+"&PJ="+name;
document.myform.submit();
}
该怎么解决

追答

你这个应该没有错误的 你去的name值 alert是汉字
乱码我真没遇见过
document.myform.action="${pageContext.request.contextPath }/pingjia.action?serId="+${servings.ownerServingsId}+"&PJ="+name;
改成

$(document).ready(function(){
$("#comment").change(function () {
var name=$("#comment").val());

alert( $("#comment").val());
window.location="action的url"+name;
});
});
乱码你可能是 jsp头设置的问题 看看是GBK还是utf-8de

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-09
根据你的描述,只要把值穿进去就可以了,Id是可以根据你的值查到的,$("#comment").val()就是下拉框选定的值(是option的value)
第2个回答  2012-01-09
来个form表单把这些包起来,然后submit上去再用request.getPara....的那个方法去取你的select的id应该就可以了
第3个回答  2012-01-09
用js获取option的内容

Jsp下拉框数据传递
Jsp下拉框数据传递是通过onchange实现的。获 取select被选中项的文本 var item = $("select[name=items] option[selected]").text();这样提交表单的时候就可以带入这个参数了,比如 var fromobj=document.getElementById("myForm");fromobj.action=xxx.do?param=item fromobj.submit();...

如何在js中写代码调用action中的方法返回结果集合,并注入到包含该js的j...
你说的应该是ajax技术.在浏览器中有一个对象xmlhttpRequest,他可以实现异步请求而不用刷新页面.只要指定一个url,可以包含参数,像你这个,就是怎么访问action,就怎么写这个url,然后执行时会自动从这个action返回结果,你所说的"注入"是js对页面元素的操作范畴.你可以从网上搜索ajax,有很多的例子,你可以借鉴...

jsp中如何在数据库中取出数据并放在下拉列表中
可以用缓存,或在访问这个页面以前准备好下拉列表的数据(在Action中完成),一般都只需要id和name就可以了。取出来后,放入requestScope中,用List和Set都可以,这就根据自己的需求了。到了jsp页面,一般都是这样的: 这里是select的默认值 <c:forEach items="${你List或Set的名字}" value="ss"> $...

怎么将JSP页面的ID值传给Action进行更新和删除
直接在 action B里request.Attribute("arrList",aaa);不就完了??再次修改的答复:您在C.jsp中添加 的 < List<MstItem> arrList = new ArrayList<MstItem>();arrList = (List<MstItem>)request.getAttribute("arrList");> 没有用处啊删掉它 在action B中添加request.setAttribute("arrList",...

JSP 页面传值 将select的值赋给<from>中的action
name="=..\/..\/" \/> 建议你不要用uri或get传值,对于新手来说经常出现乱码的,要传值用hidden代替你要是用struts就正常接收值,Servlet就request.getParameter("folderName");还有<\\%\\@ include file="form02.jsp"\\%>'是在服务器中执行的,form02.jsp里面如果有引号可能会出问题的!!!

谁知道jsp下拉框选择后页面刷新 怎么使选的值不变
我做的项目刚好用到,用的struts2,你可以把下拉框的值传到对应的action,然后存放的session里面,前台刷新的时候在select下拉框下面加一段js代码:<script type=text\/javascript var y='<c:out value=${sessionScope.aaa}\/'; $(#xxxx).val(y);...

jsp如何获取一个标签中的内容,放入另一个标签中?
首先定义一下SELECT的下拉,显示的文字就叫VALUE,里面对应的值就叫KEY,数据库里一般都是存的这个KEY,肯定不会存那个汉字VALUE的 然后在 页面上SELECT控件后面加个隐藏的文本框,刚打开页面的时候如果这个SELECT有值,也就是说如果是修改的时候,你应该把这个值放到隐藏框里,并且让SELECT显示这个选中的值...

...根据下拉选择框的内容 在js中跳转到一个ACTION中 刷新页面 怎么获得...
可以在下拉列表里加事件 然后添加个隐藏域当下拉列表变化时通过js把值赋给 隐藏域 在用js跳转的时候 可以获取隐藏域内的value然后做为参数传到acitonj中 通过request得到

struts框架怎么从.jsp页面直接跳到action中
然后浏览器会按一定的标准显示他.如果你的jsp文件没有变化,从理论上来讲,他是无法自动跳到你想到的路径去的.如果要跳必须求请回来的东西有变动,如果你只是不想改index.jsp这个文件,那么你可以配置servlet将\/index.jsp的请求拦下来,然后在自己写的类中跳到想要的URL....

JSP中怎样获取上一个页面的下拉框的值
下拉框的html代码是bbcc传到新的页面,你可以通过name(这里是aa)来取得选定的option的value

相似回答