禁用angularjs中的span文本

时间:2015-09-18 11:43:39

标签: angularjs html5

如何使用angularjs禁用span中的文本。 ng-disabled在我的案例中不起作用。

这是我的范围

<span ng-click="clickMe()" ng-if="true" ng-disabled="true">Click Me!</span>

3 个答案:

答案 0 :(得分:1)

span如何disabledenabled

它可以hideshow

间接地你可以这样做

$scope.clickMe=function(){
   $scope.disable=!$scope.disable;
   if(!$scope.disable)
     return;
  // enable code
}

答案 1 :(得分:0)

这与AngularJS无关,它是纯HTML / CSS!

以禁用方式对HTML范围不执行任何操作的方式,与angularjs添加的方式相同,具有相同的效果。 disabled属性不是全局的 - 只允许在表单控件上使用

也许您指的是拥有cursor: no-drop或拥有user-select: none;,或者只是添加一个CSS类作为该范围的可视指示符(background: #ccc)。

答案 2 :(得分:0)

我相信你的问题有点过于宽泛。 跨度没有禁用状态,所以你正在做的事情没有任何意义。将ng-disabled指令设置在诸如按钮之类的东西上会更有意义。

如果你只是隐藏文本,那么你可以使用ng-if你已经拥有或者你可以使用ng-show指令。 E.g。

<div ng-init="shouldShow = true">
    <button ng-click="shouldShow = false">Hide Div</button>
    <span ng-show="shouldShow">Text to hide</span>
    <span ng-if="shouldShow">Text to hide</span>
</div>

虽然在这种情况下ng-show和ng-if都做同样的事情,但它们确实用于不同的目的。 ngShow将呈现DOM中的元素并且根本不显示它们,如果语句等于false,则ng-if将停止处理子DOM元素的角度。

但是,如果您希望以类似禁用状态显示文本,那么您可能希望使用类似于ng-class的内容来设置跨度上的样式以使文本显示为禁用:

<style>
.disabled { color: #ccc; }
</style>
<div ng-init="showDisabled = false">
    <button ng-click="showDisabled = true">Disable Text</button>
    <span ng-class="{'disabled':showDisabled}">Text to be disabled</span>
</div>

希望这有助于您的查询,如果没有,请更多地定义您的问题。