"禁用"是锚标记的有效属性

bas*_*rat 40 html angularjs

如果我有以下简单的代码段:

<div ng-app="myApp">
    <a ng-disabled='true' ng-click="value1=123">click me</a>
    <button ng-disabled='true' ng-click="value2=123">click me</button>
    =={{value1}}==
    =={{value2}}==
</div>
Run Code Online (Sandbox Code Playgroud)

正如您从小提琴中看到的那样:http://jsfiddle.net/basarat/czVPG/该按钮不可点击,并且ng-click(这只是一个jquery on('click',function(){}))不会执行.但它确实执行锚标记.

  • 是因为禁用不是锚标记的有效属性吗?
  • 如果这是为什么当按钮没有时它仍会触发dom click事件?

Tus*_*har 25

阅读w3c Link-a -element

禁用对锚标记无效

相反,你可以通过event.preventDefault()来做到这一点

$('a').click(function(event){
   event.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)


bas*_*rat 11

禁用不是锚标记的有效属性.来源:http://dev.w3.org/html5/html-author/#the-a-element


apo*_*lov 5

如果您不想使用 javascript 禁用锚点(如其他响应中所述),您可以省略该href属性,锚点将不起作用,甚至会更改其样式。

注意:我知道我的答案并没有直接谈论该disable属性,但这些信息可能对观众仍然有用,就像对我一样。