Как отключить выбор выпадающего с помощью ng-disabled - PullRequest
0 голосов
/ 28 апреля 2019

У меня есть div для ul li, и я хочу отключить выпадающий список select, когда элементы li равны нулю. Поэтому я хочу знать, как написать ng-disabled на кнопке select, когда li элементов в ul равно 0. Я пробовал элемент select

<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 голосов
/ 28 апреля 2019

В 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
};
0 голосов
/ 28 апреля 2019

Не знаю, хорошо ли я понял ваш вопрос.Вы хотите показать кнопку выбора только тогда, когда есть элементы?Если это так, вы можете использовать оператор 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"
}]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...