我在通过jquery禁用href链接方面遇到了困难。我正在使用我修改过的这个方法。有人可以建议或帮助我解决这个问题吗? 谢谢。
的jquery / JS
<script>
$('.next-tab').click(function() {
$('.st_tab_active').attr('disabled','disabled');
var tab= $('.st_tab_active').parent().next().children('a');
tab.removeAttr('disabled');
tab.trigger('click');
return false;
});
</script>
HTML
<ul class="st_tabs">
<li><a href="#st_content_1" class="st_tab" disabled="disabled">Horizontal Tab #1</a></li>
<li><a href="#st_content_2" class="st_tab" disabled="disabled">Horizontal Tab #2</a></li>
<li><a href="#st_content_3" class="st_tab" disabled="disabled">Horizontal Tab #3</a></li>
<li><a href="#st_content_4" class="st_tab" disabled="disabled">Horizontal Tab #4</a></li>
<li><a href="#st_content_5" class="st_tab" disabled="disabled">Horizontal Tab #5</a></li>
</ul>
答案 0 :(得分:4)
您可以使用preventDefault();
来禁用链接的默认行为(即导航到给定的href
)。
$("a").click(function(e){
e.preventDefault();
});
答案 1 :(得分:3)
所有答案看起来都像是可能的解决方案
以下是关于在锚标签上使用残疾人财产的讨论
Should the HTML Anchor Tag Honor the Disabled Attribute?
更好,不要使用禁用属性,这种非法;)
现在你有了
event.preventDefault();
或
return false;
以下讨论两者的使用,
event.preventDefault() vs. return false
对于你的情况,看起来返回false是好的,因为你不想冒泡。
对于你的确切问题的解决方案不能说,因为你没有很好地解释这个问题,
在单击某个“下一个标签”时,您似乎尝试使用某些启用/禁用标签切换标签。 如果您也可以解释,我们将很乐意为您提供帮助
答案 2 :(得分:1)
您可以使用两种方法,阻止默认操作或简单返回false。
$('a').click(function(event)
{
event.preventDefault();
// Rest of the code
return false;
});
答案 3 :(得分:1)
$('a.st_tab').click(function(e){
e.preventDefault();
});