数码资讯
js使用POST打开一个新窗口
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
一般来说,JS新开窗口非常简单和直接的window.open(url);好的,
但是,因为我想将参数传递给服务器端,而且参数看起来很长,GET参数的长度是有限的,所以我有以下要求:
1,在JS中实现POST提交
2,返回的页面显示在新窗口中。
首先,我做到了。
复制代码代码如下所示:
$ ajax({
类型:邮政
网址:$ { contextpath } / /做详细分析,
数据:{ carnum:carnum,ID:refids },
成功:功能(str_response){ var obj = window.open(有关:空白);
obj.document.write(str_response);
}
});
由ajax提交,返回的数据被写入新页面,但由于浏览器会自动拦截弹出窗口,它也需要用户取消拦截,用户体验非常差。
然后,通过模拟表单表单的提交实现它。
复制代码代码如下所示:
功能柱(URL参数){ var temp_form = document.createelement(形式);
temp_form.action =网址;
temp_form.target =_blank ;
temp_form.method = 后;
temp_form.style.display =无;对于(var x参数){ var选择= document.createelement(文本);
opt.name = x;
opt.value = params {X};
temp_form.appendchild(选择);
}
document.body.appendchild(临时);
temp_form.submit();
}
注:在新打开的窗口形式的目标属性必须设置为'_blank
然后请求后($ { contextpath } / /详细分析。做,{ carnum:carnum,ID:refids });好的。
但是,因为我想将参数传递给服务器端,而且参数看起来很长,GET参数的长度是有限的,所以我有以下要求:
1,在JS中实现POST提交
2,返回的页面显示在新窗口中。
首先,我做到了。
复制代码代码如下所示:
$ ajax({
类型:邮政
网址:$ { contextpath } / /做详细分析,
数据:{ carnum:carnum,ID:refids },
成功:功能(str_response){ var obj = window.open(有关:空白);
obj.document.write(str_response);
}
});
由ajax提交,返回的数据被写入新页面,但由于浏览器会自动拦截弹出窗口,它也需要用户取消拦截,用户体验非常差。
然后,通过模拟表单表单的提交实现它。
复制代码代码如下所示:
功能柱(URL参数){ var temp_form = document.createelement(形式);
temp_form.action =网址;
temp_form.target =_blank ;
temp_form.method = 后;
temp_form.style.display =无;对于(var x参数){ var选择= document.createelement(文本);
opt.name = x;
opt.value = params {X};
temp_form.appendchild(选择);
}
document.body.appendchild(临时);
temp_form.submit();
}
注:在新打开的窗口形式的目标属性必须设置为'_blank
然后请求后($ { contextpath } / /详细分析。做,{ carnum:carnum,ID:refids });好的。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。