在html中设置属性

时间:2017-03-10 12:36:35

标签: javascript html angularjs

根据条件status == "complete",我需要将一个属性设置为输入标记。

使用javascript,我们可以使用setAttribute方法添加

var b = document.querySelector("input"); 
b.setAttribute("disabled", "disabled");

我知道如果我在HTML代码中使用2个标签,我可以做到

<input ng-if="status == 'complete'" value="complete" disabled/>
<input ng-if="status != 'complete'" value="in progress"/>

在HTML中,有没有办法直接做?

2 个答案:

答案 0 :(得分:1)

您可以使用ng-disabled, ng-value

<input ng-value="doneValue()" 
       ng-disabled="status == 'complete'"/>

这里是$ scope:

$scope.doneValue= function(){
   var value = $scope.value || 0;

   if($scope.status == 'complete'){
    value = "complete";
   }else{
    value = "In Progress"
   }
   return value;
}

现在你不需要ng-if

答案 1 :(得分:0)

您正在寻找:

<input ng-disabled="status == 'complete'" value="complete"/>

如果ngDisabled中的表达式评估为真实,则会在元素上设置disabled属性。