日期:2014-05-17  浏览次数:20663 次

下拉列表改变后提交数据到本jsp页面,提交后下拉表依然显示提交前所选择的内容
下拉列表中的数据选择后提交数据到本页,但是提交后,下拉列表中显示的内容又初始化了。怎么能让下拉表记录上一次所提交的内容呢? 
  由于我要分页展示,当点击下一页提交本页后,下拉表传的值就不是上一次选择的值,所以报错。
 代码如下:
<form method="get" action="Diningtable_select" name="form1" id="form1">
<select name="diningroomname" onchange= "form1.submit()" >
<s:iterator value="diningrooms">
<option value=<s:property value='diningroomname'/>>
<s:property value='diningroomname'/>
</option>
</s:iterator>
</select>
  </form>

------解决方案--------------------
form 默认提交重置 如果你想重新显示 直接 js 重新设置

<select name="diningroomname" onchange= "submit_function" >
function function(){
var valaue = document.getElementByName("diningroomname").value;
form1.submit();
document.getElementByName("diningroomname").value=valaue ;

}
------解决方案--------------------
1.其实你就是想刷新表单显示部分页面,查询条件不刷新,用jquery提交吧,动态加载你的数据列表,这样翻页就不会有影响了。
2.查询条件放在cookie里或者缓存里,每次查询都从里面取,不过这样你的翻页似乎就有问题了,不能保证翻页后的数据不是前面已经显示过的。
3.后台定义全局变量,存储你的查询条件,但是多线程的话就有问题了。