JS 跳转到新页面并用post传参

今天在开发的过程中有一个需求,要求:打开一个新的页面同时传参

这个不难实现 <a> 标签 就可以实现,但它却是使用 get方式传参,这种直接将参数拼接在 url 的方式(url + ? + 参数)是不安全的,数据直接暴露在地址栏,而且由于不同的浏览器对于地址栏的长度也有限制,导致参数也是有大小限制的。那么能不能使用 post方式传参呢?  下面就来介绍各种打开新页面以及传参的方式。

1 超链接<a>标签  (get传参)

   <a href="http://www.cnblogs.com/pan1042/" target="_blank">

2 window.open()  (get传参)

  window.open(URL,name,specs,replace)

   例: window.open(url + "? param1=value1&param2=value2", "_blank")

3 form  (post传参)

function openPostWindow(url, data, name)
{var tempForm = document.createElement("form");tempForm.id = "tempForm1";tempForm.method = "post";tempForm.action = url;tempForm.target = name;    // _blank - URL加载到一个新的窗口var hideInput = document.createElement("input");hideInput.type = "hidden";hideInput.name = "content";hideInput.value = data;tempForm.appendChild(hideInput);// 可以传多个参数/* var nextHideInput = document.createElement("input");nextHideInput.type = "hidden";nextHideInput.name = "content";nextHideInput.value = data;tempForm.appendChild(nextHideInput); */if(document.all){    // 兼容不同浏览器tempForm.attachEvent("onsubmit",function(){});        //IE}else{tempForm.addEventListener("submit",function(){},false);    //firefox}document.body.appendChild(tempForm);if(document.all){    // 兼容不同浏览器tempForm.fireEvent("onsubmit");}else{tempForm.dispatchEvent(new Event("submit"));}tempForm.submit();document.body.removeChild(tempForm);
}    

【参考】

  1. https://www.runoob.com/jsref/met-win-open.html  
  2. https://blog.csdn.net/u013303551/article/details/52909871

本文作学习交流用,如有错误,欢迎指正!

分类: JavaScript

JS 跳转到新页面并用post传参相关推荐

  1. vue中页面跳转传值_vue跳转方式(打开新页面)及传参操作示例

    本文实例讲述了vue跳转方式(打开新页面)及传参操作.分享给大家供大家参考,具体如下: 1. router-link跳转 // 直接写上跳转的地址 link跳转 // 添加参数 // 参数获取 id ...

  2. vue项目怎么样去实现新窗口跳转_vue跳转方式(打开新页面)及传参操作示例

    本文实例讲述了vue跳转方式(打开新页面)及传参操作.分享给大家供大家参考,具体如下: 1. router-link跳转 // 直接写上跳转的地址 link跳转 // 添加参数 // 参数获取 id ...

  3. js跳转到新页面传参以及接收参数的方法

    1.传递参数: window.location.href = "./list.html?id="+id; 1.接收参数: (1)接收参数函数封装 function GetReque ...

  4. js layui跳转页面_Layer.js提示层弹窗结束之后自动跳转到新页面的效果

    弹层之美 Layer 是一款近年来备受青睐的web弹层组件,提供layer.open(options)核心调用方法.她具备全方位的解决方案,致力于服务各水平段的开发人员,您的页面会轻松地拥有丰富友好的 ...

  5. react如何跳转html页面,react中实现点击跳转到新页面方法

    实现点击跳转到新页面,可以有两种形式,一个是本地页面打开,一个是本地页面不变跳转到新的页面. (一)页面点击本地页面打开新页面 引入ant的Button组件 onClick={()=>{wind ...

  6. HTML点击图片跳转到新页面怎么实现?(示例)

    我们在设计网页开发过程中,"跳转链接"这个需求是最普遍不过了.相信那些对HTML有一定了解的朋友,想要实现点击某个元素然后跳转到新链接新页面的功能,是非常简单的事情.比如点击按钮实 ...

  7. node怎么跳转链接_nodejs怎么跳转到新页面?

    在nodejs中使用req.query或req.params方式获取前端传来的参数,然后根据获取的参数使用res.render()方法进行页面跳转. nodejs跳转到新页面示例: 在我们做项目中一般 ...

  8. node怎么跳转链接_nodejs怎么跳转到新页面

    在nodejs中使用req.query或req.params方式获取前端传来的参数,然后根据获取的参数使用res.render()方法进行页面跳转. nodejs跳转到新页面示例: 在我们做项目中一般 ...

  9. vue 跳转打开新页面

    vue 跳转打开新页面 let { href } = this.$router.resolve({path: "/myEchars",query: { phone: "1 ...

最新文章

  1. 1035等差数列末项计算
  2. php中input的使用,php输入流php://input如何使用
  3. 【数值分析】常微分方程数值解:欧拉公式
  4. Kaggle 首战拿银总结 | 入门指导 (长文、干货)
  5. jsp设置背景图片并使得图片扩大到整个屏幕
  6. mysql5.5 配置_MySQL5.5 安装配置方法教程
  7. AngularJS 事件
  8. mybatis xml标签,批量插入
  9. 免费的html空间,免费HTML网页空间(每月200 GB 流量托管静态网页超简单)
  10. mysql必知必会和sql必知必会
  11. 在科学计算机中如何按正切,科学计算器算三角函数
  12. Separating Skills and Concepts for Novel Visual Question Answering 论文笔记
  13. bedtools查找基因组位置的信息
  14. 面试一次问一次,HashMap是该拿下了(二)
  15. 软件配置管理岗位职责说明
  16. R语言中导入excel乱码的解决办法
  17. mysql查看定时备份_mysql定时备份
  18. C语言中3种实用的输出格式:%md,%0md,%.mf
  19. 小优机器人系统恢复_解决一键还原ghost
  20. RS485的EMC防雷保护方案

热门文章

  1. matlab与工控机PCI板卡连接2020.12.10
  2. quot;《英雄联盟》支撑最高750万同时在…
  3. 使用OneNote UWP编辑公式
  4. 瓦努阿图旅游注意事项你了解吗
  5. 2012第32周官方应用市场Top Grossing动态
  6. 纽约一日游攻略:从不同视角走入纽约的过去与现在
  7. php视频吾爱破解,php 32行代码简单实现抖音无水印视频api,附前台页面
  8. yarn降版本_npm依赖版本锁定和管理
  9. SVG —— 基于XML语法的可缩放矢量图形
  10. CSS3的选择器常用汇总