post提交与get提交的表格导出方式(IE,Edge,chrome)

post提交个人认为比提交好,post可以提交的信息量,虽然现在很流行使用chrome,但是,一些特定的企业,他们喜欢使用IE,这对程序员来说无疑又增加了一道门槛

  1. 首先,get请求,大量的信息提交会被截取,导出信息错误。
  2. 这里顺便提一下个人的经验,IE提交可以不需要的编码,但是chrome不行。
  3. 先上代码,之后再做解析
var form = $("<form/>");
        var query=null;
		query = [
		{data:"type",name:"类型"},
		{data:"name",name:"名字"},
		{data:"date",name:"日期"},
		{data:"age",name:"年龄"},]
var data_C=  [
        {name:"method",data:"exportActivitiesToExcel"},
        {name:"core",data:"activity"},
        {name:"url",data:window.location.host +      window.location.pathname + window.location.search},
        {name:"sort",data:this.sort},
        {name:"query",data:JSON.stringify(this.MYquery)}
        ];
	
 var input = document.createElement("input");  
			  input.type = "hidden";  
			  input.name ="columns";  
			  input.value = JSON.stringify(query);  
			  form.append(input); 
		 for(var i in data_C){  
			 var input = document.createElement("input");  
			  input.type = "hidden";  
			  input.name = data_C[i].name;  
			  input.value = data_C[i].data;  
			  form.append(input); 
			 }
        form.attr({
            'style': 'display:none',
            'method': 'post',
            'target': '_blank',
            'action':$.constantqueryserver
        });  
        form.appendTo('body').submit().remove();

4.代码的组成很简单,就是创建一个虚拟的form表单,通过post提交的方式提交到后台,然后再清除这个表单。
query一看就是导出的标题列
data_C使我们要查询的数据的参数,例如,我们有的要排序,或者根据不同的要求导出,把需要的参数对应写到data_C里面就可以(这里注意一点,和后台沟通好,看看他获取的是什么方式
创建一个input,把name和data循环给input,一条就是这样

<input name="名字" value="name">

结束后把所有的input添加给form,给form摄者属性隐藏,提交的post,action是提交的地址,

form.appendTo('body').submit().remove();

这段代码,就是把form添加到添加到body里提交后再把它移除。
我们的post提交这样就完成了。

get请求

get请求其实更简单的了,直接把参数写到地址的后面,这样就是个get请求了

   var form = $("<form/>"), 
   action = $.constant.queryserver + "?" + encodeURI(query);  
	    form.attr({
	        'style': 'display:none',
	        'method': 'post',
	        'target': '_blank',
	        'action': action
	    });  
	    form.appendTo('body').submit().remove();

两种方式的导出就完成了。

加入我的技术群,一起学习

707196135
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值