在新选项卡或窗口显示表单提交的结果

Display Results of Form Submission on New Tab or Window

本文关键字:显示 窗口 表单提交 结果 新选项 选项      更新时间:2023-09-26

这个问题已经有几个变体了,但我没有看到这个问题的具体解决方案。虽然我实际上并不需要这个功能,但我不能让它工作真是要命!

我有一个允许访问者输入URL的字段,它会把他们带到那里。

<form name="urlField" onsubmit="return submitURLFieldForm();">
  <input type="text" name="address" id="addressfield" />
</form>

处理此问题以使必要的协议不被遗漏的JS是(特别感谢@h2ooooooo):

function submitURLFieldForm() {
var url = document.getElementById('addressfield').value;
if (!url.match(/^[a-zA-Z]+:'/'//)) {
    url = 'http://' + url;
}
window.location.href = url; 
return false;
}

如果我添加一个target="_blank"到我的开始表单标签它不工作。为什么?我应该把它加在哪里?

您从未提交过表单。

你有一个事件处理程序,当表单开始提交时,设置location并阻止正常的表单提交。

使用window.open(url)代替,如果你想打开一个新的窗口

var win=window.open(url, '_blank');
win.focus();

你可以试试这个:)

快乐编码:)