45

次の単純なコード セグメントがあるとします。

<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>

フィドルからわかるように: http://jsfiddle.net/basarat/czVPG/ボタンはクリックできず、 ng-click (これは単に jquery ですon('click',function(){})) は実行されません。ただし、アンカー タグに対しては実行されます。

  • disabled はアンカータグの有効な属性ではないためですか?
  • ボタンがトリガーされないのに、DOM クリック イベントがトリガーされるのはなぜですか?
4

7 に答える 7

25

w3c Linkthe-a-elementを読む

disable はアンカー タグでは無効です

代わりに、 event.preventDefault()で実行できます

$('a').click(function(event){
   event.preventDefault();
});
于 2013-09-10T05:33:14.510 に答える
12

Disabled は、アンカー タグの有効な属性ではありません。ソース: http://dev.w3.org/html5/html-author/#the-a-element

于 2013-09-10T05:32:52.780 に答える
3

いいえ、ここでajquery参照を使用できるタグでは機能しませんevent.preventDefault()

于 2013-09-10T05:33:03.737 に答える