【问题标题】:Open popup in a new window by clicking a button in Javascript Alert通过单击 Javascript Alert 中的按钮在新窗口中打开弹出窗口
【发布时间】:2015-10-31 08:27:25
【问题描述】:

我正在使用此代码:

  <script type="text/javascript">
window.alert("Click Ok If Over 18");
window.open(
  '.html', 
  '_blank' // <- This is what makes it open in a new window.
);
</script>

我需要添加此代码以在新窗口中打开一个弹出窗口:

<script type='text/javascript' src='address popup'></script>

如果我这样添加:

<script type="text/javascript">
window.alert("Click Ok If Over 18");
window.open(
  'address popup', 
  '_blank' // <- This is what makes it open in a new window.
);
</script>

它没有按预期打开。我只看到文字。 也许是因为我没有使用src:。 我能做什么?

【问题讨论】:

    标签: javascript html window hosting alert


    【解决方案1】:

    window.open()的第一个参数需要是你要在弹窗中打开的页面的URL。

    听起来您应该使用confirm,而不是使用警报。警报实际上不允许用户说他们不是 18 岁。即使他们关闭警报而不是点击“确定”,它仍然会继续打开您的弹出窗口。但是confirm()给了他们一个“ok”按钮和一个“cancel”按钮,所以他们可以选择。

    总的来说,您的代码可能如下所示:

    <script type="text/javascript">
    var isEighteen = window.confirm("Click Ok If Over 18");
    if (isEighteen) { // if they clicked "ok"
        window.open(
          'http://example.com/popup-is18.html', 
          '_blank'
        );
    } else { // if they clicked "cancel"
        window.open(
          'http://example.com/popup-not18.html', 
          '_blank'
        );
    }
    </script>
    

    您似乎试图从另一个文件中包含 JavaScript。如果你这样做了,你会想把上面脚本标签内的所有东西都放到一个文件中,some_name_you_can_make_up.js,然后这样做:

    <script type="text/javascript" src="http://example.com/some_name_you_can_make_up.js"></script>
    

    【讨论】:

    • 感谢您的回复:但是我这样可以在 CANC 按钮中添加 window.open 吗? Window.open 可以很好地打开所有链接,但不能在 src 中打开我的弹出代码,为什么?
    • (我假设“CANC”的意思是“取消”)当然,只需在我写的 if 语句中添加一个 else 条件;我将编辑我的帖子以进行演示。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-27
    • 1970-01-01
    • 1970-01-01
    • 2018-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多