当然不行了!
同时只能提交一个action。
一旦submit()了,就不会执行下面的代码了。为什么不把两个action要执行的动作放在一块呢?
同时只能提交一个action。
一旦submit()了,就不会执行下面的代码了。为什么不把两个action要执行的动作放在一块呢?
解决方案 »
- <s:select>如何设定默认值
- 一年工作经验,面试一般问啥???
- ibatis+spring 整合报错...捆饶我好多天了...求教育...
- java的引用和C++的引用一样吗?
- 学习JAVA
- 请教个Struts表单问题
- 多线程中操作数据库,resultset被另一个线程提前关闭而出错,救大侠们的解答
- Hibernate 查询出现空指针异常
- Apache2.2+Tomcat5.5整合在windowsxp下面正常在windows2003下总是报503错误
- try catch,为什么捕获不了错误??
- 在Weblogic上配置Hibernate为JNDI时出现错误!急!!在线等待!
- jwsdp1.4 saaj的一个问题
按钮A
document.frmPages.action = "/servlet1.do";
document.frmPages.submit();按钮B
document.frmPages.action = "/servlet2.do";
document.frmPages.submit();一个jsp中的不同按钮可以提交2个servlet的阿
function doAction(operationName)
{
var actionUrl = "";
var obj = document.getElementById("fittingsRetailInfoForm");
obj.actionName.value = operationName;
var ret;
switch (operationName)
{
case "kensaku":
obj.kensakuServerportId.value = obj.kensakuServerportId1.value;
obj.kensakuServerportArea.value = obj.kensakuServerportArea1.value;
obj.kensakuFittingsRetailFromId.value = obj.kensakuFittingsRetailFromId1.value;
obj.kensakuFittingsRetailToId.value = obj.kensakuFittingsRetailToId1.value;
obj.kensakuFittingsRetailFromDate.value = obj.kensakuFittingsRetailFromDate1.value;
obj.kensakuFittingsRetailToDate.value = obj.kensakuFittingsRetailToDate1.value;
obj.pageIndex.value = 1;
actionUrl = "kensaku.do" ;
ret = 1;
break;
case "add":
case "edit":
actionUrl = "modify.do" ;
ret = 1;
break;
case "del":
actionUrl = "delete.do" ;
ret = confirm("确认要删除吗?");
break;
case "printview":
actionUrl = "printview.do" ;
ret = 1;
break;
case "monthprintview":
actionUrl = "monthprintview.do" ;
ret = 1;
break;
case "yearprintview":
actionUrl = "yearprintview.do" ;
ret = 1;
break;
}
if (ret == 1) {
//这个注意,是*.do,struts-config.xml里面的配置名
obj.action = "/fittingsRetail/" + actionUrl;
obj.submit();
}下面掉用
<input type="button" name="yearprintview" value="生成年报单"onClick="doAction('yearprintview')">
struts-config.xml
<action path="/fittingsRetail/kensaku"
type="web.action.fittingsretail.FittingsRetailKensakuAction"
name="fittingsRetailKensakuForm"
scope="request"
validate="false">
<forward name="success" path="/fittingsretail/fittingsretailInfo.jsp"/>
<forward name="error" path="/msg/Error_Message.jsp"/>
</action>
<action path="/fittingsRetail/kousin"
type="web.action.fittingsretail.FittingsRetailKousinAction"
name="fittingsRetailKousinForm"
scope="session"
validate="false">
<forward name="success" path="/fittingsretail/fittingsretailInfo.jsp"/>
<forward name="error" path="/msg/Error_Message.jsp"/>
</action>
以上是2个form关连2个action的
以前我都是<forward name="success" path="/XX/XX.do"/>这样把2个action关联起来的,不知道是不是这个意思
<html:form1>
<html:button/>
</html:form1>
<html:form2>
<html:button>
</html:form2>
JSP
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ page contentType="text/html; charset=GBK" %>
<html:html>
<head>
<title>
UntitledJsp1
</title>
<script language="javascript" >
function Sua()
{
document.forms[0].method="post";
document.forms[0].action = "/action1.do";
document.forms[0].submit();}
</script></head>
<body>
<h1>JBuilder Generated Struts JSP for ActionForm web13.ActionForm1</h1>
<p>
<html:form action="/action1.do" method="POST"><a href='javaScript:Sua();'>aaa</a>
<html:reset value ="Reset"/>
</html:form>
</body>
</html:html>//struts-config
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<form-beans>
<form-bean name="actionForm1" type="web13.ActionForm1" />
</form-beans>
<action-mappings>
<action name="actionForm1" path="/action1" scope="request" type="web13.Action1" validate="false" />
</action-mappings>
</struts-config>
obj.actionName.value = operationName;请教fittingsRetailInfoForm是什么阿?
operationName是action名?
能不能把jsp贴出来看看
js里是var obj = document.getElementById("actionForm1");
obj.action = "/WebModule1/action1.do";//多了"/WebModule1"
obj.submit();
也就是一个jsp页面,可以有很多form,很多form分别有对应的action事件。
。
相对按钮来说,form是按钮的容器,action是按钮的事件。
只要配置文件中,按钮触发的action事件,对应的formBean是按钮所在容器form的实例就可以了!