常用的页面提交方式

本文来总结一下,常用的页面提交方式。

提到常用,大家就要注意了。如果你选用的方式不常用,那么你就该思量一下自己的设计或者程序了。还是要站在巨人的肩膀上,才能创造出好的东西。

其实,本文将要讲的几种方式都比较常用。

常用就是合适的时候,做合适的事情。合适的技术,用在合适的地方,就是好的设计;就像合适的时间,遇到合适的人一样心有灵犀。

方式一:

常用的form提交。

该种方式提交页面,页面会进行跳转。这种方式可以选择post提交方式,还是get提交方式,一般情况下,提交form通用post。这种方式,很常用。

var form = document.getElementById("frm01");
            form.action ="<%=basePath %>test/productShow.action";
            form.method = "post";
            form.submit();

方式二:

拼接参数在url后面。

这种方式,为get提交方式。参数会列在url后面。该种方式同样最常用,但是要注意传递的参数的保密性,以及参数的长度限制。

window.location.href="<%=basePath%>test/productDetails.shtml?productId="+$("#productId").val() +"&detailUrl="+$("#detailUrl").val() ; 

方式三:

Ajax提交form的方式。

这种方式,会提交整个frm01,并且局部刷新。如果需要页面跳转,也可以结合其他页面跳转的方式,在success的function中进行页面跳转。

$.ajax({
                 	type:'post',
                     url: '<%=basePath %>test/productShow.shtml',
                     data:$("#frm01").serialize(),
                     dataType:'json',
                     cache: false,
                     success : function(data) {}  

});

方式四:

Ajax拼接参数提交。

该种方式,类似上面的方式,只不过是相当于将参数拼接在url后面。而不是整个form提交。同样,该种方式,页面不会进行跳转,且局部刷新。

$(".send_msg").click(function(){
	    		 $.ajax({
	             	type:'post',
	             	async:true,
	                url: "<%=basePath%>test/productShow.shtml",
	                data:"product.productId="+$("#productId").val() +"&product.productName="+
	                        $("#productName").val()+"&product.logo="+$("#logo").val(),
	               	dataType:'json',
	                cache: false,
	                success : function(data) {}
	             });
})

方式五:

多项选择时,提交。

$("#realBuy").bind("click",function(){
          			var ids=new Array();
          			var itemNos=new Array();
          			$(".payItemBox ul li").filter(".selected").each(function(index){
          				ids.push($(this).prev().prev().val());
          				itemNos.push($(this).prev().val());
          			});
          			$("input[name='theoryrepayids']").val(ids.join(","));
          			$("input[name='itemNos']").val(itemNos.join(","));
          			$("input[name='total']").val(sum.toFixed(2));
          			$("#repForm").submit();
          		});

方式六:

跳到该页面后,自动提交,并完成跳转。

该种方式,一般在做支付跳页时用。

<form action="https://yintong.com.cn/llpayh5/authpay.htm"
				method="post" name="mainform" id="mainform">
				<input type="hidden" name="req_data" value='${req_data}' />
	</form>
	<script type="text/JavaScript">
					mainform.submit(); 

</script>

总结:

1、为了避免form套form的情况,我们可以构造一个newForm,将需要的参数,通过js赋值过去,提交这个newForm即可;

2、有些参数,不适合在页面之间传来传去,比如一个订单的金额、购买的数量之类的,那么我就可以紧着重要的传递,然后再到数据库中查询【注意数据一致性的问题】,具体问题具体分析;

3、合适的时候,使用合适的技术,这样时间长了,才能做到游刃有余。不然就是南辕北辙,不断积累失败的经验。

4、偷偷的告诉自己:该好好学写一下JQuery啦!因为不熟悉,已经吃了不少亏了。。。

时间: 2024-12-25 14:04:00

常用的页面提交方式的相关文章

微信小程序--常用的页面传值方式

记录小程序中常用的几种页面传值方式 一.storage wx.setStorage({ key: "key", data: value }) 通过getStorage回调方式获取data值,或者通过wx.getStorageSync(key) 同步获取key对应的data值 #### 二.url传值 url传值也是经常都能用到的 ##### 1.url传递通过字符串拼接传递key=value形式的参数 wx.navigateTo({ url: '/pages/index/index?i

后台获取页面提交数据时,中文总是乱码

后台获取页面提交数据时,中文总是乱码,折腾了好久才发现是因为,把提交的数据放在了url后面才导致,中文乱码,通过查阅资料才找到解决方法: 页面提交方式: 后台获取形式: String replay = new String(request.getParameter("replay").getBytes("iso-8859-1"),"utf-8");

渗透常用dos命令,http协议及数据提交方式

dir查看目录 cd 切换目录 strat www.xxx.com   打开网页 del 删除文件 cls 清屏幕命令 ipconfig  查看ip地址 netstat -an   显示网络连接.路由表和网络接口信息 systeminfo 显示关于计算机及其操作系统的详细配置信息,包括操作系统配置.安全信息.产品 ID 和硬件属性 net user 查看用户 net user admin admin /add     添加一个账号admin  密码admin 的用户 net user admin

页面之间值传递常用的几种方式

1.QuerySting在页面间传递值 这种方法的写法:在要传递值的页面,Response.Redirect(url),值包含在在url中.接收值得页面,Request.QueryString["变量名"]. 这是使用起来很简单的一种方式,但是它不是很安全,因为值会在浏览器里的地址栏里显示.并且它也不能传递对象,对长度也有限制,如果要传递的值很多,且对安全要求也高的话,这种方式就不适合了. 2.Session变量 我们通常在一个页面中,将值放到session变量中,在另外几个页面使用它

PHP中常用的超全局变量 表单中get和post提交方式的区别 session与cookie的区别 GD库是做什么用的

PHP中常用的超全局变量 $_GET ----->get传送方式$_POST ----->post传送方式$_REQUEST ----->可以接收到get和post两种方式的值$GLOBALS ----->所有的变量都放在里面$_FILES ----->上传文件使用$_SERVER ----->系统环境变量$_SESSION ----->会话控制的时候会用到$_COOKIE ----->会话控制的时候会用到 表单中get和post提交方式的区别 get是把参

form表单常用提交方式—get与post的区别

表单有两种提交方式:get与post <form name="regForm" action="动作" method="提交方式"> </form> 1.get 以明文的方式通过URL提交数据,数据在URL中可以看到.提交数据最多不能超过2kb,安全性较低,但效率比post高.适合提交数据量不大安全性不高的数据,如搜索.查询等功能. 2.post 将用户提交的信息封装在HTML HEADER内,适合数据量大安全性高的用户信

HTML -- get与post提交方式的区别 -- (转)

在写代码过程中,get与post是两种不同的提交方式.下面,列举出两种方式的不同. 方法/步骤 get是从服务器上获取数据,post是向服务器传送数据.   get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址.用户看不到这个过程.   对于get方式,服务器端用Request.QueryString

MVC中页面传值方式总结

MVC中的页面传值,通常指Controller和view之间的数据传递,经常用到的有几种方式,总结如下: 一.Controller----------->View 1.ViewData 获取或设置一个字典,其中包含在控制器和视图之间传递的数据.使用ViewData是采用键值对的形式,对所定义的数据进行传递.在View中会自动识别到拥有唯一键值的ViewData,并将数据显示出来. 例子: public ActionResult() { <span style="white-space

Asp.Net页面传值方式总结

通过学习asp.net,其中讲到最多的便是控件的使用,而控件使用中最大的不同便是在对页面进行传值时,与C/S学习中有很大的不同.视频中讲的比较零碎,把那些搬来总结一下. 在asp.net中新建一个web窗体的表单(form1),在表单中进行提交数据. <span style="font-size:18px;"><form id="form1" method="post/get" action ="WebForm1.as