window.open()如何打开其他系统新页面并传参
时间: 2024-05-04 09:18:00 浏览: 77
可以通过在URL参数中添加查询字符串的方式传递参数,然后在新页面中通过JavaScript获取查询字符串参数来使用。
例如,使用以下代码可以打开一个新页面,并通过查询字符串参数“name”和“age”传递参数:
```
window.open('http://example.com/new_page.html?name=John&age=30');
```
在新页面中,可以使用以下代码获取查询字符串参数值:
```
var params = new URLSearchParams(window.location.search);
var name = params.get('name');
var age = params.get('age');
```
然后,您可以使用这些变量进行其他操作,例如将它们显示在页面上。
相关问题
window.open params 传参
`window.open()` 是JavaScript中用于打开新窗口或者在一个已有窗口中加载URL的一个函数。它的基本语法如下:
```javascript
window.open(url[, windowName[, features[, replace]]]);
```
其中参数说明如下:
1. `url`: 需要在新的浏览器窗口或标签页中打开的网页地址。
2. `windowName` (可选): 新窗口的名称或者引用。如果省略,浏览器将自动选择一个新的名字。
3. `features` (可选): 这是一个字符串,包含了关于新窗口特性的标志,比如尺寸、位置、状态栏等。例如:`"width=600,height=400,menubar=yes,scrollbars=yes,resizable=yes,status=yes"`。
4. `replace` (可选): 如果设为`true`,当前窗口会被新打开的页面替换;默认值是`false`,在这种情况下,新窗口会出现在堆栈的顶部。
例如,创建一个新窗口并指定大小:
```javascript
window.open('https://www.example.com', 'newWindow', 'width=800,height=600');
```
window.open传参vue获取参数
可以通过URL参数的方式将参数传递给新打开的窗口,然后在新窗口中通过window.location.search获取URL参数,再用vue的路由或者状态管理器来传递参数。
例如,以下代码将参数id和name传递给新窗口:
```
let id = 1;
let name = 'John';
window.open(`/newPage?id=${id}&name=${name}`);
```
在新窗口中可以通过以下方式获取参数:
```
let params = new URLSearchParams(window.location.search);
let id = params.get('id');
let name = params.get('name');
```
然后可以将参数存储在vue的状态管理器中:
```
this.$store.commit('setId', id);
this.$store.commit('setName', name);
```
或者通过路由传递参数:
```
this.$router.push({ path: '/newPage', query: { id: id, name: name } });
```
然后在新页面中可以通过$route.query来获取参数:
```
let id = this.$route.query.id;
let name = this.$route.query.name;
```
阅读全文