ng-disabled可以应用于哪些元素?

4

我以为可以将ng-disabled应用于<a>元素。看起来不行。它可以在<button>元素上工作。有人知道我可以将ng-disabled应用于哪些元素吗?

2个回答

3
您无法禁用锚标签。 ng-disableddisabled属性仅适用于元素,如果您想禁用锚标签,则应在其上调用ng-click函数,然后根据结果进行重定向或不执行任何操作。 标记
<a href="" ng-click="redirect(isValid, url)"> Anchor Button </a>

代码

$scope.redirect = function(isValid, url){
    if(isValid)
      $window.open(url, "_blank")
}

@charlietfl 它适用于IE11+,对于svg,它将在IE9中工作。 - Pankaj Parkar
奇怪的是,MDN声称比caniuse覆盖范围更广。 - charlietfl
1
@charlietfl 我不这么认为。也许你正在查看 MDN 中的 SVG 行? - PSL
@PSL 哎呀...是的,很奇怪他们在同一页上有两个属性。 - charlietfl
我相信从技术上讲,正确的答案应该是:ng-disabled设置了disabled HTML属性,因此它将适用于所有HTML元素,其中disabled禁用控件。这些元素在@PSL的链接中列出。 - Jan
显示剩余4条评论

1
根据ngDisabled文档的用法。其中保留了HTML标签,不进行解释。
<INPUT
  ng-disabled="expression">
...
</INPUT>

该指令适用于 <input /> 元素,包括语义元素,如 <button><select><textarea>。有关此指令可应用于的所有元素的列表,请参见其他 表单控件 元素。

其他的呢?可以禁用大约8个不同的标签。 - charlietfl
我不确定我理解了。我试图解释只有<button><input />元素可以利用ngDisabled。我有遗漏吗? - scniro
众多其他表单控件 - charlietfl
你是指输入类型吗?我不知道还有其他符合条件的语义标签元素。 - scniro
请查看上面的 PSL 链接以获取表单控件。 - charlietfl
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接