本文参考:http://my.oschina.net/sallency/blog/300568

在开发工作共我们往往会遇到一个表单需要包含多个action不同的提交动作,这时候就不能在使用submit按钮来进行提交了,下面提供通过js来实现这一功能的方法.

示例代码:

<form name="demo" method="post">
<!--YOUR DATA AREA-->
<input type="button" value="添加" onclick="addAction()">
<input type="button" value="删除" onclick="deleteAction()">
<input type="button" value="保存" onclick="saveAction()">
<input type="button" value="查询" onclick="searchAction()">
</form> <script type="text/javascript">
function addAction(){
document.demo.action="your add method url";
document.demo.submit();
} function deleteAction(){
document.demo.action="your delete method url";
document.demo.submit();
} function saveAction(){
document.demo.action="your add save url";
document.demo.submit();
} function searchAction(){
document.demo.action="your serach method url";
document.demo.submit();
}
</script>

//==================

demo中的代码(JSP中的hidden):

 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function trimStr(str){
return str.replace(/(^\s*)|(\s*$)/g,"");
}
function redisSearchSubmit(){
document.getElementById("searchtype").value = "Redis查询";
document.form1.submit();
} function jdbcSearchSubmit(){
document.getElementById("searchtype").value = "JDBC查询Mysql";
document.form1.submit();
} function hibernateSearchSubmit(){
document.getElementById("searchtype").value = "Hibernate查询Mysql";
document.form1.submit();
}
function check(){ // 节目名
var assetname = document.form1.assetname.value;
if(trimStr(assetname) == ""){
alert("您输入的节目名是空格,请重新输入");
return false;
} // 导演
var director = document.form1.director.value; // 编剧
var screenwriter = document.form1.screenwriter.value; //主演
var actor = document.form1.actor.value;
} </script>
</head>
<body>
<h1>查询页面</h1>
<FORM name="form1" METHOD=POST ACTION="${ pageContext.request.contextPath }/redisSqlSearch" onsubmit="return check();">
<input type="hidden" name="searchtype" id="searchtype" value="" />
<TABLE border="1" width="500">
<TR>
<TD>节目名称</TD>
<TD><INPUT TYPE="text" NAME="assetname" value=""></TD>
</TR>
<TR>
<TD>导演</TD>
<TD><INPUT TYPE="text" NAME="director" value="冯小刚"></TD>
</TR>
<TR>
<TD>编剧</TD>
<TD><INPUT TYPE="text" NAME="screenwriter" value="顾晓阳"></TD>
</TR>
<TR>
<TD>主演</TD>
<TD><INPUT TYPE="text" NAME="actor" value="葛优"></TD>
</TR>
<TR>
<TD colspan="2">
<INPUT TYPE="button" value="Redis查询" onclick="redisSearchSubmit()"> <INPUT TYPE="button" value="JDBC查询Mysql" onclick="jdbcSearchSubmit()"> <INPUT TYPE="button" value="Hibernate查询Mysql" onclick="hibernateSearchSubmit()">
</TD>
</TR>
</TABLE>
</FORM>
</body>
</html>

Form表单中不同的按钮进行不同的跳转的更多相关文章

  1. form表单中的button按钮

    如果在form表单中 , 存在button元素,button元素就充当了submit的角色

  2. 如何阻止form表单中的button按钮提交

    <form action="#" method="post"> <input type="text" name=" ...

  3. form表单中新增button按钮,点击按钮表单会进行提交

    原生button控件,在非ie浏览器下,如果不指定type,默认为submit类型.如果不想自动提交表单,指定type=“button”

  4. 在一个form表单中根据不同按钮实现多个action事件

    <form id="writeForm" method="post"> <div class="write-btn-tj" ...

  5. 关于form表单中button按钮自动提交问题

    坑:点击确认按钮,form表单提交2次,发送后台2次请求 //错误代码: <Button id="btnSubmit" name="btnSubmit" ...

  6. form表单中button按钮返回上一页解决办法

    解决Form中button按钮不好用的问题解决办法. 方法一: 1.在Form表单标签中国增加一个属性,如下图,红框处 2.返回按钮样式 3.onclick方法需要跳转的页面,遮挡处为需要返回的页面 ...

  7. form表单中多个button按钮必须声明type类型

    最近在做一个后台管理系统,发现了一个小bug: 问题描述:form表单中有多个button按钮(以下图为例),如果第一个button不写type属性,那么点击第一个button按钮会触发submit事 ...

  8. dwz的form表单中url的变量替换

    form表单中action的地址格式 “__URL__/edit/{xxx}”,大括号内的 “xxx” 就是变量名,主要功能是结合table组件一起使用. 下图中的删除.编辑.修改密码都是用了url变 ...

  9. form表单reset重置按钮

    如果ajax提交完数据,后想清空表单内容 ,以前都是用这个方法$("#id").val(""); 一个一个清空的,其实可以在form表单中加个隐藏的<in ...

随机推荐

  1. Andrew机器学习第一课

    批梯度下降算法:      训练样本为一个时:更新Θi 让代价函数最小,利用沿梯度下降方向函数会变得越来越小.这个函数是代价函数J关于(Θi )的.这里并没有在讨论x,y. 关于为什么式子(图是复制的 ...

  2. vue中的静态路由

    单页Web应用(single page web application,SPA),就是只有一张Web页面的应用.单页应用程序 (SPA) 是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面 ...

  3. Typecho 二次开发文档链接

    快速入门模板入门 模板制作快速入门推荐目录结构 Typecho模板的推荐页面构成模板文件说明 Typecho主题制作文件结构 页面制作制作functions文件: Typecho的functions. ...

  4. [小结]了解innodb锁

    原创文章,会不定时更新,转发请标明出处:http://www.cnblogs.com/janehoo/p/5603983.html 背景介绍: innodb的锁分两类:lock和latch. 其中la ...

  5. 解决编译错误:cc: Internal error: Killed (program cc1)

    错误现象: cc: Internal error: Killed (program cc1) ... 大体上是因为内存不足,临时使用交换分区来解决吧 sudo mkswap /swapfile sud ...

  6. 队列<一>

    这里用的递归法,采用两种版本,一种是C语言,一种是C++:但是,用C语言没有“引用”,所以采用的是指向指针的指针:而C++具备“引用”,所以直接用&引用,简洁: 先看C++的代码: BiTre ...

  7. Page页面生命周期——微信小程序

    onLoad:function (options) {     //页面初始化     console.log('index Load') }, onShow:function () {     // ...

  8. [Selenium With C#基础教程] Lesson-01环境搭建

    作者:Surpassme 来源:http://www.jianshu.com/p/33b87bc00233 声明:本文为原创文章,如需转载请在文章页面明显位置给出原文链接,谢谢. 最近开始复习Sele ...

  9. (01背包)Buy the souvenirs (hdu 2126)

    http://acm.hdu.edu.cn/showproblem.php?pid=2126 Buy the souvenirs Time Limit: 10000/1000 MS (Java/Oth ...

  10. (区间dp + 记忆化搜索)Treats for the Cows (POJ 3186)

    http://poj.org/problem?id=3186   Description FJ has purchased N (1 <= N <= 2000) yummy treats ...