如何使用ng-disabled

时间:2019-04-28 05:50:01

标签: angularjs

我对ul li有一个div,并且我想在li项为零时禁用选择下拉列表,所以我想知道当ul中的li项为0时如何在选择按钮上写入ng-disabled。 我尝试过选择元素

<select id="currency" ng-disabled="( $('#ulYAxis li div label').length==0)" 
        ng-model="unit" ng-change="CurrencySymbolClick()"> .

<select id="currency" ng-disabled="( $('#ulYAxis li div label').length==0)" 
         ng-model="unit" ng-change="CurrencySymbolClick()">
    <option value="">Select Currency</option>
    <option value="$">$(Dollar)</option>
    <option value="€">€(Euro)</option>
    <option value="£">£(Pound)</option>
    <option value="¥">¥(Yen)</option>
 </select>

这是我的选择下拉列表


这是我的选择下拉菜单,我有

<ul class="newwidgetsevendiv_bubble_uldiv" id="ulYAxisSize" 
    ondrop="dropYaxis(event)" ondragover="allowDropYaxis(event)">
</ul> 
<label id="yAxisSize" class="seriesyaxis" 
       style="display: none; clear:both; ">
</label>

这是我的ul

2 个答案:

答案 0 :(得分:0)

在AngularJS中,表达式是根据作用域对象求值的。如果要运行更复杂的JavaScript代码,则应将其设置为控制器方法,然后从视图中调用该方法。

̶<̶s̶e̶l̶e̶c̶t̶ ̶i̶d̶=̶"̶c̶u̶r̶r̶e̶n̶c̶y̶"̶ ̶n̶g̶-̶d̶i̶s̶a̶b̶l̶e̶d̶=̶"̶(̶ ̶$̶(̶'̶#̶u̶l̶Y̶A̶x̶i̶s̶ ̶l̶i̶ ̶d̶i̶v̶ ̶l̶a̶b̶e̶l̶'̶)̶.̶l̶e̶n̶g̶t̶h̶=̶=̶0̶)̶"̶ ̶
<select id="currency" ng-disabled="noLabel()" 
         ng-model="unit" ng-change="CurrencySymbolClick()">
    <option value="">Select Currency</option>
    <option value="$">$(Dollar)</option>
    <option value="€">€(Euro)</option>
    <option value="£">£(Pound)</option>
    <option value="¥">¥(Yen)</option>
</select>
$scope.noLabel = function {
    return $('#ulYAxis li div label').length==0
};

答案 1 :(得分:-1)

我不知道我是否很好地理解了你的问题。您只想在有项目时显示选择按钮吗?如果是这样,您可以使用ng-if语句,这是一个示例:

<div>
    <button ng-if="items.length > 0">Select</button>
    <button ng-if="items.length <= 0" disabled>Select</button>
    <ul ng-repeat="i in items">
      <li>{{i.name}}</li>
    </ul>
 </div>

JS:

$scope.items = [{
  "id": 1,
  "name": "item1"
},
{
  "id": 2,
  "name": "item2"
}]