struts中下拉列表的onchang事件执行actiong的用法100分
我在做项目中遇到的的情况是   是用SSH框架做的       
 一个页面有2个下拉列表框      一级类别的二级类别   现在是要通过选择一级类别而获得 
 相应的二级类别   我的想法是在下拉列表的onchang事件中调用一个action获得一个 
 二级类别的list,但我试了onchang= "/**.do "这样执行不了      页面的提示错误是onchang= "/**.do "少了个“/”符号   我改城onchang= "//**.do "后就没这个页面错误 
 但我们都知道虽然没错误但action是绝对执行不了   所以这样也不行 
 我又想了一个方法绝对这个问题   但我绝对这个方法还是感觉不怎么好 
 大家可以看看      如果大家有更好的方法可以提出来            共同进步       
 这是javascript函数                                     
 function   getname{ 
                this.frm1.select.options[..]      省//这行代码是获得select里面被选种的option的value 
 //下面是调用action关键代码了 
 window.open( "你要调用的action如:???.do   ,并可以你获得传递参数 "); 
 } 
 好调用action没问题了 
 下面是也面的struts标签 
 当然还有些逻辑标签用于判断onetype,twotype存在的我就没写了 
 onetype,twotype这2个对象集合当然都是从数据库里读出来的   不是死的数组 
 我主要写主要代码 
  <html:select   property= "select "   onchang= "retrun   getname(); ">  
              <html:option   name= "onetype "property= "onetypename ">  </html:option>                 
  </html:select>    
  <html:select   property= "select ">  
              <html:option   name= "twotype "property= "twotypename ">  </html:option>                 
  </html:select>  
 这个功能我用aps.net写只用了10分钟 
 在asp.net里面只要在页面加栽的时候判断是否为回发页面并在下拉列表里的onchang事件从数据库里读出数据就可以了,注意asp.net的控件他自己自带事件的    
------解决方案--------------------可以用javascript来处理 
 function change(){ 
   operation =  "change ";   //此处的opertion要在页面隐藏一下,可在ActionForm中定义 
 }     
 页面中  onchang=“function change()”   
 action中 
 if(opertaion.equals( "change ")){ 
   得到你的list,然后用request.setAttribute()返回给页面就OK了 
 }
------解决方案--------------------不对吧 
 当onchang事件触发的时候你根本没调用action啊 
 你只是返回了一参数opertaion啊? 
 function change(){ 
   operation =  "change "; 
   document.forms[0].submit(); //此处的opertion要在页面隐藏一下,可在ActionForm中定义 
 } 
 onchang事件触发后又没让表单执行他的actiong= "??.do "  ,只执行了你自己写的JS函数而已吧?   
 你可以提交表单啊,得到二及页面的数据再返回这个页面。
------解决方案--------------------	document.frm1.action =  "/action.do "; 
 	document.StartForm.submit();