这个应该怎么做?通过select能得到数据:
<html:select onchange="getOption()" property="optionValue">
  <html:optionsCollection name="optionForm" property="option" label="mc" value="id" />
<html:select>
选择某一个数据后,submit提交到action,action根据所选择内容取得对应数据,然后再显示.
<script language="JavaScript">
<!--
function getOption()
{
 document.optionDefineForm1.method.value = "showXyz";
 document.optionDefineForm1.submit();
}
//-->
</script> 
因为是在同一个页面显示列表,所以用
<jsp:useBean id="a" scope="request" type="java.util.List"/>这种方式提示我request中没有a这个对象.
还有其他方式么?   谢谢啊~~

解决方案 »

  1.   

    如果你走一遍action的化,页面一定是刷新过的了;
    可以在select上加onchange事件;
    然后提交表单,
    但是看你的描述的东西,又想在同一个页面处理;
    几种方式:
    1,提交到后台,把目前表单已有参数都给过去,然后action运算完再把所有数据传回来,把之前的选项(下拉的,输入的)装载好,然后再把想显示的数据显示给客户端;
    2,如果页面比较简单,也可以考虑把需要变化的地方放在iframe里面,然后是把表单数据用iframe里面的页面走action,这样可以避免页面刷新;
    3,使用如今比较流行的Ajax技术,用脚本驱动,下拉选择后驱动脚本,异步取回数据,再用脚本把数据填充上去;
      

  2.   

    是在同一个页面处理的。
    其实说白了就是,我在select下拉框选择一个值,现在想在同一个页面中把与其相关联的数据显示出来。
    问题是,那部分数据需要通过request传递过来,这部分语句我有点不太会写.
    按照一般的写法:
    <jsp:useBean id="a" scope="request" type="java.util.List"/><logic:iterate ....>
    .....
    </logic:iterate>这是会抛出request中没有a对象的异常,那怎么写才好呢...?
      

  3.   

    你可以使用ajax技术,先做个记号,等会给你一个例子。
      

  4.   

    运用Ajax通过select下拉框能得到数据 
    http://www.blogjava.net/rickhunter/articles/62342.html
      

  5.   

    请教下:
    如果不使用Ajax,这种方式应该怎么处理的?
      

  6.   

    我在《运用Ajax通过select下拉框能得到数据 》也提到了,如果不用ajax,可以有两种方式处理。
    简单省事且普遍使用的是用框架。将页面分两桢,上桢是下拉框,下桢就是要读取的内容。还有一种本方法,就是一个页面的,在下拉框触发选择事件后,从后台得到要显示的内容,以及你的下拉框的数据,然后在页面上表现出来。但这种方法不好,因为你选择多少次,下拉框的数据就要从数据库重复读取多少次。
      

  7.   

    NND,总是提示贴子回复次数大于跟给分次数 !!!!