Javascript HTML按钮单击“在新选项卡中打开2个链接”
我在前端有这些按钮,一次只能看到一个。btn活动隐藏按钮Javascript HTML按钮单击“在新选项卡中打开2个链接”,javascript,html,jquery,css,Javascript,Html,Jquery,Css,我在前端有这些按钮,一次只能看到一个。btn活动隐藏按钮 <a href="https://example.com/shop/" target="_blank" id="starter-monthly" class = "package1">Buy Now</a> <a href="https://example.com/shop/" target="_bl
<a href="https://example.com/shop/" target="_blank" id="starter-monthly" class = "package1">Buy Now</a>
<a href="https://example.com/shop/" target="_blank" id="starter-yearly" class = "package2 btn-active">Buy Now</a>
但当我点击按钮时,它会在两个单独的选项卡中打开两个链接,分别是和
我只想打开一个链接,它是
我做错了什么?任何解决方案?单击锚元素(
a
标记)指示浏览器打开链接。拥有target
属性进一步告诉浏览器在新窗口/选项卡中打开它。现在,您的代码捕获单击事件并显式打开一个新窗口(具有正确的url)。但是,这并不妨碍浏览器执行针对所有“锚定”标记的原始操作
基本上,您会看到两个选项卡打开,因为一个由代码打开,另一个由浏览器打开,因为单击定位标记。通过对传递给处理程序的事件对象调用preventDefault
,可以抑制默认浏览器行为。您的代码应该是这样的:
jQuery('#starter-monthly').on('click', function(e) {
e.preventDefault();
var href = jQuery(this).attr('href');
window.open(href + '?package='+24);
});
jQuery('#starter-yearly').on('click', function(e) {
e.preventDefault();
var href = jQuery(this).attr('href');
window.open(href + '?package='+27);
});
单击锚元素(
a
tag)指示浏览器打开链接。拥有target
属性进一步告诉浏览器在新窗口/选项卡中打开它。现在,您的代码捕获单击事件并显式打开一个新窗口(具有正确的url)。但是,这并不妨碍浏览器执行针对所有“锚定”标记的原始操作
基本上,您会看到两个选项卡打开,因为一个由代码打开,另一个由浏览器打开,因为单击定位标记。通过对传递给处理程序的事件对象调用preventDefault
,可以抑制默认浏览器行为。您的代码应该是这样的:
jQuery('#starter-monthly').on('click', function(e) {
e.preventDefault();
var href = jQuery(this).attr('href');
window.open(href + '?package='+24);
});
jQuery('#starter-yearly').on('click', function(e) {
e.preventDefault();
var href = jQuery(this).attr('href');
window.open(href + '?package='+27);
});
你是对的。成功了。添加e.preventDefault();行只打开一个链接(包链接)非常感谢!你是对的。成功了。添加e.preventDefault();行只打开一个链接(包链接)非常感谢!两个链接在同一个按钮内吗?如果是这样,那可能就是原因。@ZA_Viking,不,那是两个单独的按钮,一次只能看到一个。两个链接都在同一个按钮内吗?如果是这样,那可能就是原因。@ZA_Viking,不,那是两个单独的按钮,一次只能看到一个