切换ng-click属性

时间:2015-11-25 17:33:48

标签: html angularjs

我的 span 带有 ng-click =“...”属性。 ng-click 稍微修改了DOM中的span的CSS,使其更像按钮。在我的应用程序中,我希望切换 span 是否可点击。我可以让 ng-click 不能做任何容易的事情,但我更喜欢的是完全删除/禁用该属性。这是为了避免 ng-click 对元素进行的所有“按钮化”。如果可点击变量再次变为true,则重新启用该属性也会很好。

我想要一个避免使用 $ scope。$ watch 的解决方案,因为我的应用程序非常庞大且手表很慢。

谢谢!

3 个答案:

答案 0 :(得分:2)

我认为您可以有两个带有和不带ng-click属性的跨度,并根据该可点击变量控制这两个跨度ng-ifng-show

答案 1 :(得分:1)

Achu建议的简单解决方案!

只需使用两个跨度,而不是在单个范围内切换属性。

<span ng-if="clickable" ng-click="...">Click me!</span>
<span ng-if="!clickable">Cant click me!</span>

答案 2 :(得分:0)

如果我遇到这种情况,我不会尝试 $("#startdate").change(function() { var newendatemaximum = new Date ( $("#startdate").val() ) ; newendatemaximum.setYear(newendatemaximum.getFullYear() + 1); $(".enddate").datepicker("option", "endDate", newendatemaximum); }); enable disable属性。相反,我会使用一些带有ng-click的标志变量来查看click函数是否应该执行其功能,或者不像控制器中那样有一个类似的方法

$scope