超链接实现post方式提交
思路:如果想要超链接实现post方式提交,必须借助表单。下面得两种方式,一种是借助显示的form表单,一种是借助隐式的form表单
方式一:将超链接放到一个form表单中,或者超链接本身就在一个form表单中,这种情况下,我们将需要提交的参数用隐藏域的方式提交过去。
分两种情况:
A.超链接的提交地址和form表单的提交地址是一致的:
<form name='form1' action='MyJsp2.jsp' method='post'>
<input type='hidden' name='page' value='1'/>
<input type='hidden' name='hiddenA' value='A'/>
<a href='javascript:document.form1.submit();'>首页</font></a>
...
</form>
B. 超链接的提交地址和form表单的提交地址不一致的:
<script type="text/javascript" src="js/jquery-1.8.0.min.js"></script>
<script type="text/javascript">
function post(path){
$("#form1").attr("action",path);
$("#form1").submit();
}
</script>
<form name='form1' action='MyJsp2.jsp' method='post' id="form1">
<input type='hidden' name='page' value='1'/>
<input type='hidden' name='hiddenA' value='A'/>
<a href="javascript:post('index.jsp')">首页</a>
...
</form>
在接收页面,直接通过java方式获取即可
String p = request.getParameter("page");
System.out.println(p); //1
方式二:使用js代码实现隐藏form表单的实现
index.jsp页面如下:
/**
* 功能:post方式提交
* 参数列表:url:提交的地址;params:参数列表
*/
<script type="text/javascript">
function post(url, params) {
var temp = document.createElement("form"); //创建form表单
temp.action = url;
temp.method = "post";
temp.style.display = "none";//表单样式为隐藏
for (var item in params) {//初始化表单内部的控件
//根据实际情况创建不同的标签元素
var opt =document.createElement("input"); //添加input标签
opt.type="text"; //类型为text
opt.id = item; //设置id属性
opt.name = item; //设置name属性
opt.value = params[item]; //设置value属性
temp.appendChild(opt);
}
document.body.appendChild(temp);
temp.submit();
return temp;
}
</script>
<body>
<a href="javascript:post('MyJsp.jsp',{id:1,name:'aaa'})">超链接实现post提交</a>
</body>
在MyJsp.jsp页面,直接采用java方式接收即可:
System.out.println(request.getParameter("id")); //1
System.out.println(request.getParameter("name")); //aaa
超链接实现post方式提交的更多相关文章
- 使用post方式提交表单如何获取图片数据及其他文本参数[NodeJS]
当POST方式提交包含图片的表单时,如上传图片时,需要在<form>字段需要添加参数enctype="multipart/form-data",表明以二进制方式传输数据 ...
- get方式提交中文乱码解决
get方式提交中文时会乱码,过滤器只过滤post请求,此时可修改tomcat配置文件server.xml,为Connector添加属性URIEncoding="utf-8". ec ...
- Android 采用post方式提交数据到服务器
接着上篇<Android 采用get方式提交数据到服务器>,本文来实现采用post方式提交数据到服务器 首先对比一下get方式和post方式: 修改布局: <LinearLayout ...
- 导出excel时,以form方式提交json数据
今天在写项目时写到一个excel的导出,开始想用ajax请求后台后导出,但发现ajax会有返回值,而且ajax无法直接输出文件,而后台的excel导出方法已经封装好,不方便修改. 就改用了提交的方式f ...
- easyui form 方式提交数据
http://ldzyz007.iteye.com/blog/2067540 <form id="ff" method="post"> . ...
- http-使用get和post方式提交数据
注意点: 1.Get和post这两种提交方式有何不同? 很明显post方式提交多了content-length和content-type这两项,所以post提交是要为这两项设置setRequestPr ...
- jquery.form.js实现将form提交转为ajax方式提交的使用方法
本文实例讲述了jquery.form.js实现将form提交转为ajax方式提交的方法.分享给大家供大家参考.具体分析如下: 这个框架集合form提交.验证.上传的功能. 这个框架必须和jquery完 ...
- Android(java)学习笔记213:开源框架post和get方式提交数据(qq登录案例)
1.前面提到Http的get/post方式 . HttpClient方式,实际工作的时候不常用到,因为这些方式编写代码是很麻烦的 2.Android应用会经常使用http协议进行传输,网上会有很完善 ...
- Android 使用Post方式提交数据(登录)
在Android中,提供了标准Java接口HttpURLConnection和Apache接口HttpClient,为客户端HTTP编程提供了丰富的支持. 在HTTP通信中使用最多的就是GET和POS ...
随机推荐
- theano中的scan用法
scan函数是theano中的循环函数,相当于for loop.在读别人的代码时第一次看到,有点迷糊,不知道输入.输出怎么定义,网上也很少有example,大多数都是相互转载同一篇.所以,还是要看官方 ...
- 【 D3.js 入门系列 --- 7 】 理解 update, enter, exit 的使用
在前面几节中反复出现了如下代码: svg.selectAll("rect") .data(dataset) .enter() .append("rect") 当 ...
- 神奇的sort()函数
今天来谈一谈sort()函数,sort() 方法用于对数组的元素进行排序,用法为arrayObject.sort(sortby):括号中的为可选参数,准确来说应该是一个函数,这个函数用来规定排序方法, ...
- C#的选择语句练习
1.请输入一个数x,若x<1,则y=x:若1<=x<10,则y=2x-1:若x>=10,则y=3x-11,要求随意输入一个x值,求出y值. 2.输入问题[你有房子吗?],若回答 ...
- Apache Nutch build文件解析
本文目的:分析Apache Nutch 1.9的build.xml文件,从而让读者了解nutch的build全部流程
- Linux下的网卡驱动程序的编写过程(转)
工作需要写了我们公司一块网卡的linux驱动程序.经历一个从无到有的过程,深感技术交流的重要.Linux作为挑战微软垄断的强有力武器,日益受到大家的喜爱.真希望她能在中国迅速成长.把程序文档贴出来,希 ...
- to_date & to_char
在oracle数据库中,有这么两个数据格式转换函数, to_date & to_char 这两个函数都可以将日期格式更改,但是一般都用前者,百度搜索中有个例子: select * from T ...
- 《java编程思想》读书笔记 暂停一段时间,改为上面的练习题
发现个很尴尬的现象.我一天实在看得太快了...全写下 写博客都得一晚上.. 之前因为是第一次看这么厚的书,别人都说很难,以为会看很慢的.然而,已经完全学过Java的 我感觉没啥压力,越看越快....第 ...
- Spring源码学习之:FactoryBean的使用
转载:http://book.51cto.com/art/201311/419081.htm ==========个人理解========================= FactoryBean和B ...
- filesort是通过相应的排序算法
filesort是通过相应的排序算法,将取得的数据在max_length_for_sort_data的默认值是1024. --------------------------------------- ...