在新标签页中get方式打开url

window.open(loginurl_withaccout, "_blank");

下图中根据后台返回的url以及用户名密码字段,以及用户名密码动态生成了带账号的url。

$.ax('./front/getURLBySidAndUid', {sysid:sysid}, 'POST', function(d) {
var loginurl_withaccout = d.loginurl + "?"+d.namefield+"="+d.username+"&"+d.pwdfield+"="+d.userpwd;
console.info(loginurl_withaccout);
window.open(loginurl_withaccout, "_blank");
}, function(e) {
layer.alert('出问题啦~请稍后再试~',{title:'提示',icon: 2});
}, false); //同步

在新标签页中post方式打开url

下面这种方式支持IE9以上以及谷歌火狐.但是不支持360

/*获取系统带参数的登录url*/
$.ax('./front/getURLBySidAndUid', {sysid:sysid}, 'POST', function(d) { /*get跳转*/
/*var loginurl_withaccout = d.loginurl + "?"+d.namefield+"="+d.username+"&"+d.pwdfield+"="+d.userpwd;
window.open(loginurl_withaccout, "_blank");*/ /*post跳转*/
var params = new Array();
params.push({ name:d.namefield,value:d.username},{name:d.pwdfield,value:d.userpwd});
openPostWindow(d.loginurl,params,"_blank");
}, function(e) {
layer.alert('出问题啦~请稍后再试~',{title:'提示',icon: 2});
}, false); //同步 /**
* 动态创建form表单 - 实现post带参数跳转到新tab页
**/
function openPostWindow(url,params,name){
var tempForm = document.createElement("form");
tempForm.id="tempForm_post";
tempForm.method="post";
tempForm.enctype="application/x-www-form-urlencoded";
tempForm.action=url;
tempForm.target=name; /*打开新窗口*/
tempForm.style.display = "none";
//添加参数
for (var item in params) {
var input = document.createElement("input");
input.name = params[item].name;
input.value = params[item].value;
tempForm.appendChild(input);
}
document.body.appendChild(tempForm);
tempForm.submit();
document.body.removeChild(tempForm);
}

window.location和window.open区别

性质不同

  • window.location:window.location是window对象的属性。
  • window.open:window.open是window对象的方法。

用途不同

  • window.location:window.location用来替换当前页,也就是重新定位当前页 。
  • window.open:window.open用来让链接页面在窗口中打开。

打开网站不同

  • window.location:window.location只能在一个网站中打开本网站的网页。
  • window.open:window.open可以在一个网站上打开另外的一个网站的地址 。

JS打开url的几种方法的更多相关文章

  1. Openerp 中打开 URL 的三种 方法

    来自:http://shine-it.net/index.php/topic,8013.0.html 最近总结了,Openerp 中打开 URL 的三种 方法: 一.在form view 添加 < ...

  2. ajax请求参数中含有特殊字符"#"的问题 (另附上js编码解码的几种方法)

    使用ajax向后台提交的时候 由于参数中含有#  默认会被截断 只保留#之前的字符  json格式的字符串则不会被请求到后台的action 可以使用encodeURIComponent在前台进行编码, ...

  3. 使用urllib2打开网页的三种方法(Python2)

    python2才有urllib2模块,python3把urllib和urllib2封装成了urllib模块 使用urllib2打开网页的三种方法 #coding:utf-8 import urllib ...

  4. (转)C#调用默认浏览器打开网页的几种方法

    转载,原文地址:http://blog.csdn.net/testcs_dn/article/details/42246969 CSharp调用默认浏览器打开网页的几种方法 示例界面: 方法一:从注册 ...

  5. 提交(post)xml文件给指定url的2种方法

    原文:提交(post)xml文件给指定url的2种方法 1  这段代码是在网上搜到的,拿来共享,项目正好要用到.其中的data你只需要传递一个xml字符串就可以 protected   string  ...

  6. html table表格导出excel的方法 html5 table导出Excel HTML用JS导出Excel的五种方法 html中table导出Excel 前端开发 将table内容导出到excel HTML table导出到Excel中的解决办法 js实现table导出Excel,保留table样式

    先上代码   <script type="text/javascript" language="javascript">   var idTmr; ...

  7. js删除数据的几种方法

    js 删除数组几种方法 var arr=['a','b','c']; 若要删除其中的'b',有两种方法: 1.delete方法:delete arr[1] 这种方式数组长度不变,此时arr[1]变为u ...

  8. JS刷新页面的几种方法(转)

    Javascript刷新页面的几种方法: 1 history.go(0) 2 location.reload() 3 location=location 4 location.assign(locat ...

  9. JS刷新当前页面的几种方法总结

    reload 方法,该方法强迫浏览器刷新当前页面. 语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页 ...

随机推荐

  1. 解决mac睡眠唤醒/插拔之后,外接显示器无法点亮/无信号问题

    问题现象 mac盖上盖子唤醒或者里临时拔出数据线,再重新连接之后,经常出现下面问题: [系统偏好设置]-[显示器]仍可以识别外接显示器: 外接显示器会提示无信号输入 解决方法 方法一 通过[系统偏好设 ...

  2. Wireshark使用技巧:提取VOIP通话中的音频流

    "Wireshark的RTP流分析功能实战." 在VOIP协议的分析过程中,常常会遇到一些标准协议承载的语音传输,如以SIP.H.323为控制协商协议,RTP为语音数据协议的VOI ...

  3. Linux 下Postgresql 命令:

    关闭:service postgresql stop 启动:service postgresql start 启动数据库:pg_ctl start -D /data/postgres 重启数据库: p ...

  4. vue 地图可视化 maptalks 篇

    Maptalks 项目是一个 HTML5 的地图引擎, 基于原生 ES6 Javascript 开发: - 二三维一体化地图, 通过二维地图的旋转 /倾斜增加三维视角 - 插件化设计, 能与其他图形库 ...

  5. Socket简单实现ssh笔记

    Scoket概念: socket本质上就是在2台网络互通的电脑之间,架设一个通道,两台电脑通过这个通道来实现数据的互相传递. 我们知道网络 通信 都 是基于 ip+port 方能定位到目标的具体机器上 ...

  6. Python上下文管理器的使用

    上下文管理器可以控制代码块执行前的准备动作,以及执行后的清理动作. 创建一个上下文管理器类的步骤:(1)一个__init__方法,来完成初始化(可选)(2)一个__enter__方法,来完成所有建立工 ...

  7. netcore中使用grpc

    简介 grpc是由google公司开发的一个高性能.开源和通用的RPC框架,采用HTTP/2通信. 1.gRPC的传输使用http/2支持双向流. 2.支持多语言,例如java.go.php.net. ...

  8. luoguP3431 [POI2005]AUT-The Bus

    安利系列博文 https://www.cnblogs.com/tyner/p/11565348.html https://www.cnblogs.com/tyner/p/11605073.html 做 ...

  9. 关于使用LocalDateTime进行存储,时间相差比较多的问题。

    可以在设置数据库中的连接, characterEncoding=UTF8&useSSL=false&serverTimezone=GMT%2b8

  10. pyplot中的一些函数

    from matplotlib import pyplot as plt plt.ylabel(‘Grade’) : y轴的名称 plt.xlabel(‘Grade’) : x轴的名称 plt.tit ...