【问题标题】:Input field open in new Tab with OnClick使用 OnClick 在新选项卡中打开输入字段
【发布时间】:2019-11-12 00:54:12
【问题描述】:

我有一个输入字段。当我单击此字段时,它会将产品添加到购物车并在购物车页面上移动。

<input type="button" class="bgbutton"
value="Add to Shopping Cart" id="addtocart" name="addtocart"
onkeypress="window.event.cancelBubble=true;"
onclick="if (document.forms['form590'].onsubmit()) { document.forms['form590'].submit(); } return false;"
target="_blank">

我给了标签target,但不幸的是它不起作用。 请给我任何 JQuery / JavaScript 等解决方案。

解决方案

我只需在表单标签中添加目标属性。就是这样。

$("form").attr("target", "_blank");

我解决了我的问题。

谢谢

【问题讨论】:

  • 目标是一个锚标签属性。
  • @skdroid 它也可以用于表单标签。请参阅下面的答案。
  • @Drewskis action 不同,target 也不同。 action 允许将表单提交到给定的 URL,而 target 只打开新窗口

标签: javascript jquery html


【解决方案1】:

你可以使用锚标签代替按钮

<a
     href="CART_URL" <-- here goes cart url you want to open in the new tab
     class="bgbutton"
     id="addtocart"
     name="addtocart"
     onkeypress="window.event.cancelBubble=true;"
     onclick="document.forms['form590'].onsubmit() ? document.forms['form590'].submit() :; return false;"
     target="_blank"
>Add to Shopping Cart</a>

【讨论】:

    【解决方案2】:

    要打开一个新标签,您可以使用以下代码。

    <input type="button" class="bgbutton" value="Add to Shopping Cart" id="addtocart" name="addtocart" onkeypress="window.event.cancelBubble=true;" onclick="window.open('NewPage.aspx', 'NewPage');" >
    

    在页面之间移动

    <input type="button" class="bgbutton" value="Add to Shopping Cart" id="addtocart" name="addtocart" onkeypress="window.event.cancelBubble=true;" onclick="location.href = 'NewPage.aspx';" >
    

    有关更多详细信息,您可能需要参考以下问题:

    在 JQuery 中,您可以使用以下内容

    <script>
            $(document).ready(function () {
                $(".bgbutton").click(function () {
                    window.location.href = "NewPage.aspx";
                });
            });
    
    </script>
    

    您可以通过如下 URL 将变量带到其他页面。

     <script>
            $(document).ready(function () {
                var name = "coder";
    
                $(".bgbutton").click(function () {
                    window.location = 'NewPage.aspx?username=' + name;
                });
            });
    
     </script>
    

    要让传递的值在新选项卡中打开,请使用以下命令

     <script>
            $(document).ready(function () {
                var name = "coder";
    
                $(".bgbutton").click(function () {
                    window.open('NewPage.aspx?username=' + name,"")
                });
            });
    
     </script>
    

    要了解如何从 URL 中检索值,您可能需要参考以下问题:Get url parameter jquery Or How to Get Query String Values In js

    【讨论】:

    • 你能告诉我你是怎么做的吗?如果你能分享你的脚本文件那就太好了
    • @JohnBrad 什么不适合你?编码器正在非常正确地解释事情。只需在 JavaScript 中使用 window.location 即可为您解决问题。您不想使用target HTML 属性。
    • 我的 Onclick 代码。 onclick="if (document.forms['form590'].onsubmit()) { document.forms['form590'].submit(); } return false;"在 window.open 中不起作用。
    • 当我使用 $(".bgbutton").click 时。它正在购物车页面上。我希望它将在新标签中打开。第二次使用后,我的添加到功能不起作用。
    • @JohnBrad 为什么要使用 if 条件?请告诉我添加到购物车的代码
    猜你喜欢
    • 1970-01-01
    • 2019-09-18
    • 1970-01-01
    • 2014-01-10
    • 1970-01-01
    • 2019-08-24
    • 2013-10-05
    • 2012-04-25
    • 2020-09-02
    相关资源
    最近更新 更多