【问题标题】:Disable the input field if corresping search field is Empty如果相应的搜索字段为空,则禁用输入字段
【发布时间】:2016-07-01 20:49:02
【问题描述】:

我在搜索页面中有以下输入字段。

  1. 操作员
  2. ValueToSearch

目前 Operator 持有值“IsEmpty”。我想禁用 ValueToSearch,因为 Operator 值为 Empty。如果运算符不是 IsEmpty(例如,等于、不等于),那么我应该显示 ValueToSearch。

如果条件不成立,如何禁用?

<div ng-if="query.field.operatorClass == 'ComparableOrNull' || query.field.operatorClass == 'IntOrNull'" class="ng-scope">
    <!-- ngIf: selectedOperator[$index] == translatedIsEmpty -->
    <!-- ngIf: selectedOperator[$index] != translatedIsEmpty -->
    <input ng-if="selectedOperator[$index] != translatedIsEmpty" blur-integer="" ng-model="query.value" class="form-control ng-valid ng-scope ng-dirty ng-valid-parse ng-touched">
    <!-- end ngIf: selectedOperator[$index] != translatedIsEmpty -->
</div>

谢谢

【问题讨论】:

    标签: html angularjs


    【解决方案1】:

    您需要使用ngDisabled ngInit 指令!

    看看这个:

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
    <div ng-app>
      Column : <input ng-model="column" /> <br/>
      Operator : <input ng-init="operator=''" ng-model="operator" /> <br/>
      Value To Search : <input ng-model="valueToSearch" ng-disabled="operator==''" />
    </div>

    要隐藏你可以使用 ngIf :

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
    <div ng-app>
      <div ng-init="translatedIsEmpty=''" ng-repeat="op in ['+','','*']">
        Column :
        <input ng-model="column" />
        <br/>Operator :
        <input ng-model="op" />
        <br/>Value To Search :
        <input ng-if="op != translatedIsEmpty"/>
      </div>
    </div>

    【讨论】:

    • 我添加了 operator 等于 empty.. 。它不像所说的那样工作。
    • 为什么要放 ngIf 和 ngDisabled?您想禁用或隐藏该字段吗?
    • 嗨Himanshu,我有输入字段的完整块..如果操作员是“IsEmpty”,请检查如何隐藏/禁用此输入字段
    猜你喜欢
    • 2022-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-18
    相关资源
    最近更新 更多