由于业务规则和要求,我需要一个可选项卡的元素(不使用 tabindex),看起来像一个链接,只有 javascript 功能(例如,它需要对 Web 服务进行 ajax 调用)并且它不能包含任何特殊字符,例如“#”,因为 URL 末尾会包含该字符,并且会被我们的防火墙阻止,该防火墙由于外部法规而设置得非常严格。此外,href 不能为空,因为我们的网站位于 Sharepoint 内,保持为空意味着您将被重定向到默认登录页面。
我遇到过各种问题,这些问题都包含一些事实和论据,可以使用一个元素而不是另一个元素,但这些问题都没有一个令人满意的答案,即使它甚至有一个明显的答案。例如:
这两个示例并不完全令人满意,因为对于第一个示例,尽管一个答案的投票数很高,但我不确定该答案是否符合上述要求。第二个确实出于同样的原因。
总之,以下哪个选项是首选,同时牢记限制和要求以及语义和 JavaScript 的已知最佳实践?
<a href="javascript:void(0)" class="action"></a>
或者
<a href="" class="action"></a>
或者
<a href="javascript;" class="action"></a>
或者
<button class="action"></button>
或者
<span class="action"></span>
WITH(示例)ajax调用:
<script>
$('.action').click(function() {
$.ajax({
url: "test.html",
context: document.body
})
.done(function() {
$(this).addClass("done");
});
});
});
</script>
如前所述,限制不能更改。时期。