js使用post 方式打开新窗口


Posted in Javascript onFebruary 26, 2015

js中一般新打开窗口很简单直接window.open(url);就可以了,

但是由于我希望传递参数到服务端,而且参数看起来很长一串,而且get方式的提交参数长度是有限制的,因此我有以下需求:

1,js中实现post提交

2,返回的页面在新窗口显示

首先我是这么做的:

 $.ajax({   

                     type: "POST",   

                     url: '${contextPath}/analyse/detail.do',   

                     data: {carNum :carNum,ids:refIds},   

                     success: function(str_response) { var obj = window.open("about:blank");   

                        obj.document.write(str_response);   

                     }   

                 });

通过jQuery ajax提交,返回的数据写在新的页面中,但是由于浏览器的会拦截自动弹出的窗口,这样还需用户自己解除拦截,用户体验很差,

然后我又通过模拟form表单的提交来实现

function post(URL, PARAMS) { var temp_form = document.createElement("form");      

            temp_form .action = URL;      

            temp_form .target = "_blank";

            temp_form .method = "post";      

            temp_form .style.display = "none"; for (var x in PARAMS) { var opt = document.createElement("textarea");      

                opt.name = x;      

                opt.value = PARAMS[x];      

                temp_form .appendChild(opt);      

            }      

            document.body.appendChild(temp);      

            temp_form .submit();     

        }

注意:如需新打开窗口 form 的target属性要设置为'_blank'

然后请求post('${contextPath}/analyse/detail.do',{carNum :carNum,ids:refIds});就可以了

Javascript 相关文章推荐
jQuery代码优化 选择符篇
Nov 01 Javascript
简单的JavaScript互斥锁分享
Feb 02 Javascript
jQuery中:header选择器用法实例
Dec 29 Javascript
浅谈angularJS中的事件
Jul 12 Javascript
基于Bootstrap和jQuery构建前端分页工具实例代码
Nov 23 Javascript
微信小程序商城项目之淘宝分类入口(2)
Apr 17 Javascript
JavaScript实现一个空中避难的小游戏
Jun 06 Javascript
浅谈React和Redux的连接react-redux
Dec 04 Javascript
vue 子组件向父组件传值方法
Feb 26 Javascript
clipboard在vue中的使用的方法示例
Oct 19 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
Nov 19 Javascript
vue 出现data-v-xxx的原因及解决
Aug 04 Javascript
JS仿Windows开机启动Loading进度条的方法
Feb 26 #Javascript
JS实现跟随鼠标闪烁转动色块的方法
Feb 26 #Javascript
javascript中typeof操作符和constucor属性检测
Feb 26 #Javascript
JS实现网页滚动条感应鼠标变色的方法
Feb 26 #Javascript
js随机生成网页背景颜色的方法
Feb 26 #Javascript
jQuery简单实现隐藏以及显示特效
Feb 26 #Javascript
最流行的Node.js精简型和全栈型开发框架介绍
Feb 26 #Javascript
You might like
在smarty模板中使用PHP函数的方法
2011/04/23 PHP
php判断电脑访问、手机访问的例子
2014/05/10 PHP
javascript 图片裁剪技巧解读
2012/11/15 Javascript
jquery struts 验证唯一标识(公用方法)
2013/03/27 Javascript
常用的JS验证和函数汇总
2014/12/23 Javascript
JavaScript实现获取某个元素相邻兄弟节点的prev与next方法
2016/01/25 Javascript
Vue组件BootPage实现简单的分页功能
2016/09/12 Javascript
windows 下安装nodejs 环境变量设置
2017/02/02 NodeJs
详解使用Node.js 将txt文件转为Excel文件
2017/07/05 Javascript
详解vite2.0配置学习(typescript版本)
2021/02/25 Javascript
[03:03]DOTA2校园争霸赛 济南城市决赛欢乐发奖活动
2013/10/21 DOTA
详解Python中with语句的用法
2015/04/15 Python
举例讲解Python中metaclass元类的创建与使用
2016/06/30 Python
Python的IDEL增加清屏功能实例
2017/06/19 Python
详解TensorFlow查看ckpt中变量的几种方法
2018/06/19 Python
python+numpy+matplotalib实现梯度下降法
2018/08/31 Python
Python中的list与tuple集合区别解析
2019/10/12 Python
基于python实现蓝牙通信代码实例
2019/11/19 Python
10个Python面试常问的问题(小结)
2019/11/20 Python
Python3操作读写CSV文件使用包过程解析
2020/04/10 Python
详解pandas apply 并行处理的几种方法
2021/02/24 Python
Html5页面二次分享的实现
2018/07/30 HTML / CSS
在购买印度民族服饰:Soch
2020/09/15 全球购物
建龙钢铁面试总结
2014/04/15 面试题
法律专业个人实习自我鉴定
2013/09/23 职场文书
药剂专业学生求职信范文
2013/12/28 职场文书
留学推荐信怎么写
2014/01/25 职场文书
文化活动实施方案
2014/03/28 职场文书
乐观自信演讲稿范文
2014/05/21 职场文书
公司委托书格式范本
2014/09/16 职场文书
2014年学校卫生工作总结
2014/11/20 职场文书
2014年工作总结及2015工作计划
2014/12/12 职场文书
会议欢迎词
2015/01/23 职场文书
工程服务质量承诺书
2015/04/29 职场文书
公司劳动纪律管理制度
2015/08/04 职场文书
CSS完成视差滚动效果
2021/04/27 HTML / CSS