我在页面上有一个按钮。这传递了两个参数,一个是打开新窗口或选项卡所需的URL(如何配置浏览器)。还有一个ID
<input onclick="doSomething("http://url", "id123")" />
我需要做的是打开URL的新窗口/标签,然后在原始标签/窗口上重定向到新的/ contrller / idxxx
这是我的方法,但它不起作用
var doSomething = function(url, id) {
window.open(url, '_blank');
document.location="/mycontroller/doSomething?id=" + id
}
有人有什么建议吗?不,我不能使用表格或其他任何东西。在这种方法中只是严格的Javascript。
答案 0 :(得分:1)
您也许可以使用<a>
标记 - 以下内容适用于您吗?
<a target="_blank" onclick="doSomething('id123')" href="http://url">Click me to open new tag with href URL and process the onclick function</a>
您将使用href
属性中的任何内容打开新标签页,您还可以方便地在doSomething()
方法中处理网址更改。
var doSomething = function(id) {
document.location="/mycontroller/doSomething?id=" + id
}
答案 1 :(得分:0)
检查您对报价的使用。您在脚本中使用双引号,所以它看到的只有:
onclick="doSomething("
同时将其更改为键入=&#39;按钮&#39;?
还检查你的js控制台,看看是否有任何错误。通常会告诉您代码错误或某种浏览器安全问题。
答案 2 :(得分:0)
您的代码几乎可以预期javascript event
变化
<input onclick="doSomething("http://url", "id123")" />
到
<input onclick="doSomething('http://url', 'id123')" />
注意:您无法在内联事件函数中使用" '
\
char转义javascript函数中的javascript函数使用相反引号