Form表单中不同的按钮进行不同的跳转
本文参考: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表单中不同的按钮进行不同的跳转的更多相关文章
- form表单中的button按钮
如果在form表单中 , 存在button元素,button元素就充当了submit的角色
- 如何阻止form表单中的button按钮提交
<form action="#" method="post"> <input type="text" name=" ...
- form表单中新增button按钮,点击按钮表单会进行提交
原生button控件,在非ie浏览器下,如果不指定type,默认为submit类型.如果不想自动提交表单,指定type=“button”
- 在一个form表单中根据不同按钮实现多个action事件
<form id="writeForm" method="post"> <div class="write-btn-tj" ...
- 关于form表单中button按钮自动提交问题
坑:点击确认按钮,form表单提交2次,发送后台2次请求 //错误代码: <Button id="btnSubmit" name="btnSubmit" ...
- form表单中button按钮返回上一页解决办法
解决Form中button按钮不好用的问题解决办法. 方法一: 1.在Form表单标签中国增加一个属性,如下图,红框处 2.返回按钮样式 3.onclick方法需要跳转的页面,遮挡处为需要返回的页面 ...
- form表单中多个button按钮必须声明type类型
最近在做一个后台管理系统,发现了一个小bug: 问题描述:form表单中有多个button按钮(以下图为例),如果第一个button不写type属性,那么点击第一个button按钮会触发submit事 ...
- dwz的form表单中url的变量替换
form表单中action的地址格式 “__URL__/edit/{xxx}”,大括号内的 “xxx” 就是变量名,主要功能是结合table组件一起使用. 下图中的删除.编辑.修改密码都是用了url变 ...
- form表单reset重置按钮
如果ajax提交完数据,后想清空表单内容 ,以前都是用这个方法$("#id").val(""); 一个一个清空的,其实可以在form表单中加个隐藏的<in ...
随机推荐
- DOM3级的变化
由于存在跨浏览器开发问题所以不推荐使用: 兼容性: event.key 包含所按下键的字符 event.char 属性IE9和safari和chrome并不支持 event.location 返回所按 ...
- 利用irc服务器做物联网数据转发 c# winform程序
利用irc协议的优点: 免费,不用购买服务器就可以实现稳定公网转发数据 开源,irc的客户端和开源库众多,省去了自己造轮子的时间 历史悠久,互联网诞生伊始就有irc 缺点:安全性比较差 简单协议接收可 ...
- 3.window窗口
window组件依赖于draggable.resizable.panel三个组件,这三个组件的特性window都可以使用: dialog组件依赖于window.linkbutton.
- js-倒计时原理
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> ...
- fresco加载本地图片、gif资源
首先 来看看fresco 是个神马东西 https://github.com/facebook/fresco 这个是fresco的一个官方gifhub 官网为http://frescolib.org/ ...
- AngularJS config run 及区别和例子
一.config方法 在模块加载阶段,对模块进行自定义配置 config可以注入$stateProvider, $urlRouterProvider, $controllerProvider, $pr ...
- Delphi cxGrid使用汇总(一)
1. 去掉cxGrid中台头的Box解决:在tableview1的ptionsview的groupbybox=false; 2.统计功能解决:(1) tableview1. tableview1的op ...
- Android-Kotlin-印章类
上一篇博客介绍了,Android-Kotlin-枚举enum: 由于枚举 和 印章类 有相似之处,所以两者对比一下: Kotlin的枚举,重点区分的数据本身 Kotlin的印章类,重点区分的是数据类型 ...
- 搭建一台deeplearning的服务器
在计算机时代的早期,一名极客的满足感很大程度上来源于能DIY一台机器.到了深度学习的时代,前面那句话仍然是对的. 缘起在2013年,MIT科技评论将深度学习列为当年十大科技突破之首.其原因在于,模型有 ...
- 通过 NewLife.XCode 迁移任意现有数据库到任意数据库
通过 NewLife.XCode 迁移任意现有数据库到任意数据库(附分表分库方法) 本文背景是将其他系统的数据库迁移到另一个数据库(仅需 20 行代码),也可以作为项目迁移用,生成自己系统的专属实体代 ...