javascript - 基于条件的选择中的 A​​ngularJS 选项

标签 javascript html angularjs

我有一个<select>元素,它可能有一个默认的 <option>根据条件设置 - 该条件是另一个用户先前已提交表单并创建了正在提交的对象。不过好像申请不了ng-if到选项元素(或任何标签),我发现很难想出解决方案。

目前,我的代码如下所示:

<select
    id="someId"
    ng-options="(item?'Yes':'No') for item in [true, false]"
    class="someClass"
    ng-class="someMethodToGetDynamicClass('this')
    ng-model="myObject.thisOption"
    ng-disabled="valueCheckingIfThisObjectHasBeenPreviouslySubmitted">
    <option ng-if="valueCheckingIfThisObjectHasBeenPreviouslySubmitted" selected>{{myObject.thisOption}}</option>
</select>

只有在valueCheckingIfThisObjectHasBeenPreviouslySubmitted时才应设置所选选项。为 true - 这意味着其他人之前已提交过该表单,因此该值已被设置并且只应显示。

最佳答案

您可以使用过滤器,或者更简单的选择,避免 ng-options属性 <select>并使用 ng-repeat<option>元素

我简化了您的代码以提供一个快速示例(甚至因为我看不到循环部分...您简化了它,但有些东西丢失了?或者也许只是星期五下午,我看不到它:)

<select ng-options="item for item in items" ng-model="selectedItem">
</select>

这将变成

<select ng-model="selectedItem">
    <option ng-repeat="item for item in items" ng-if="item === yourConditionVariableOrElse">{{item}}<option>
</select>

我希望即使经过简化,程序也能很清楚。

关于javascript - 基于条件的选择中的 A​​ngularJS 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36358391/

相关文章:

javascript - jquery.turbolinks 无法处理 $(document).ready 在 Rails 中

Javascript 计算从今天算起的天数

javascript - 使用 jQuery 将同一个 div 中的两个不同元素包装到所有类中?

javascript - 如何在 AngularJS ngInputTags 中调用标签删除函数

angularjs - 如何从本地主机中的node.js Restful api 使用我的 angular.js 文件获取数据

javascript - 使用 AngularJs 和 ES6 类 : 'this' is not available in ng-click

javascript - 服务器端验证post json数据

Javascript 下拉 新问题

javascript - SwiperJS - 你如何设计分页项目符号?

html - 为什么我的 jpeg 没有出现在我的网页中?