我在链接中有radio
button
:
<label class="dd--option">
<a href="someURL" class="dd--noscript--link">
<input name="dd_radio" type="radio" class="dd--radio dd--radio--js" checked />
<span class="dd--label">
<img class="dd--label--image" src="http://90.0.0.91/show.php/swatch/23080/black"/>
<span class="dd--label--text">Black</span>
</span>
</a>
</label>
我想实现以下目标:
href
的{{1}} attribute
中提供的链接。anchor tag
radio
。我可以实现吗?如果是,怎么样?
答案 0 :(得分:1)
不是100%确定点击<input>
是否会在每个浏览器中自动将事件冒充到父<a>
,但如果是,则应该这样做:
$('.dd--noscript--link').on('click', function(e) {
e.preventDefault();
});
正如@Barmar在评论中提到的,在禁用JS的情况下,href="#"
不会导致浏览器加载新页面。
答案 1 :(得分:1)
在单选按钮上添加Javascript事件处理程序,并使用event.stopPropagation()
。
$(".dd--radio--js").click(function(e) {
e.stopPropagation();
});
如果启用了Javascript,则会执行此功能,stopPropagation()
将阻止点击冒泡到锚点,因此它不会跟随链接。
如果禁用了Javascript,则不会执行此代码,因此点击会冒泡到锚点,并会跟踪链接。