如果在 ui-select 中没有 selected,则禁用按钮
Disable button if nothing is selected in ui-select
我有这段代码可以生成 ui-select:
<ui-select ng-model="newTask.work" theme="select2" class="form-control" title="Scegli un lavoro">
<ui-select-match placeholder="Scegli un lavoro">{{$select.selected.label}}</ui-select-match>
<ui-select-choices repeat="item in lavori | filter: $select.search">
<div ng-bind-html="item.label | highlight: $select.search"></div>
</ui-select-choices>
</ui-select>
如果这个 ui-select 什么都没有 select,我想禁用一个按钮,但是写这个不起作用
ng-disabled="!work"
我该怎么做?
谢谢。
正如其他人所说,Plunkr 会有所帮助。
出于兴趣,这有什么不同吗:
ng-disabled="!newTask.work || newTask.work.length == 0"
另一个提示:在开发过程中,当您遇到这样的问题时,值得将其贴在您的网页上:
<pre>{{ newTask.work | json }}</pre>
它将向您显示绑定的 Angular 变量的原始值,因此您可以在 <ui-select>
控件中的 select/unselect 项目中看到它的值变化。
希望对您有所帮助。
更新(看到 Plunkr 后):
如果您将以下行添加到您的 script.js,您会看到我建议的 pre
会在您的下拉列表中显示您 select 的值,并且从在那里,您可以设置 ng-disabled
标志:
$scope.newTask =
{
work: null
};
...当您 select 下拉列表中的项目时,您的按钮将启用。
(这就是我推荐 pre
想法的原因。它在您的 Plunkr 中什么也没有显示,即使在 select 一个项目之后,立即显示您的 Angular 变量是' t 绑定到 select,或者不存在。)
我有这段代码可以生成 ui-select:
<ui-select ng-model="newTask.work" theme="select2" class="form-control" title="Scegli un lavoro">
<ui-select-match placeholder="Scegli un lavoro">{{$select.selected.label}}</ui-select-match>
<ui-select-choices repeat="item in lavori | filter: $select.search">
<div ng-bind-html="item.label | highlight: $select.search"></div>
</ui-select-choices>
</ui-select>
如果这个 ui-select 什么都没有 select,我想禁用一个按钮,但是写这个不起作用
ng-disabled="!work"
我该怎么做?
谢谢。
正如其他人所说,Plunkr 会有所帮助。
出于兴趣,这有什么不同吗:
ng-disabled="!newTask.work || newTask.work.length == 0"
另一个提示:在开发过程中,当您遇到这样的问题时,值得将其贴在您的网页上:
<pre>{{ newTask.work | json }}</pre>
它将向您显示绑定的 Angular 变量的原始值,因此您可以在 <ui-select>
控件中的 select/unselect 项目中看到它的值变化。
希望对您有所帮助。
更新(看到 Plunkr 后):
如果您将以下行添加到您的 script.js,您会看到我建议的 pre
会在您的下拉列表中显示您 select 的值,并且从在那里,您可以设置 ng-disabled
标志:
$scope.newTask =
{
work: null
};
...当您 select 下拉列表中的项目时,您的按钮将启用。
(这就是我推荐 pre
想法的原因。它在您的 Plunkr 中什么也没有显示,即使在 select 一个项目之后,立即显示您的 Angular 变量是' t 绑定到 select,或者不存在。)