我现在有两个提交按钮
        <html:submit property="add" value="增 加"></html:submit>
        <html:submit property="next" value="下一步"></html:submit>
在action里我要进行不同的处理,应该怎么写
比如:
if(点了前面的add){
forward=mapping.findForward("add");
}
if(点了前面的next){
forward=mapping.findForward("next");
}
return forward; 
  

解决方案 »

  1.   

    <script language="javascript">
    function beforeSubmit(opration) {
       frm.opration.value= opration;
       frm.submit();
    }
    </script>
    <form id="frm" action="aa.do">
    <input type="hidden" name="opration">
    ……
    <input type="button" value="增 加" onclick="beforeSubmit('add')">
    <input type="button" value="下一步" onclick="beforeSubmit('next')">
    <form>---------------------------
    action的代码
    ---------------------------
    String op = request.getParameter("opration");
    if("add".equals(op)){
    forward=mapping.findForward("add");
    }
    if("next"".equals(op)){
    forward=mapping.findForward("next");
    }
    return forward; 
      

  2.   

    一种方法是判断value的值啦。
    还有一种方式是因为你提交只点击其中的一个按钮嘛,可以用判空的方式。
    还有一种就是在页面中放一个隐含值,点击的时候设置成相应的add,或者next,这样可以省的判断,直接就可以用,这样就将你的代码if(点了前面的add){
    forward=mapping.findForward("add");
    }
    if(点了前面的next){
    forward=mapping.findForward("next");
    }
    return forward; 
    简化为下面的两行了。
    forward=mapping.findForward(隐含变量的值);
    return forward; 除了这些之外,应该还有一些其他的方法的。
      

  3.   

    catail(我背叛了自己) 正解
      

  4.   

    <html:submit property="submit" name="name">
    然后在表单上获取name的属性