【问题标题】:how to show/hide a div on the basis of a checkbox selection in angular js如何根据angular js中的复选框选择显示/隐藏div
【发布时间】:2014-02-13 08:16:36
【问题描述】:

我的页面上有一个复选框和一个 div。

<input type="checkbox" id="Animals" name="Animals" ng-model="ModelData.Animals" 
                            ng-checked="ModelData.Animals == 'A'" />


 <div class="form-group" ng-show="ModelData.Animals == 'A'">

                        <label for="FirstName" class="col-md-9">
                            Are you interested in Animal Liability Coverage?
                        </label>
                        <div class="col-md-3">
                            <label>
                                <input type="radio" id="AnimalLiabCovY" name="AnimalLiabilityCoverageRadio" ng-model="ModelData.AnimalLiabCov"
                                    value="Y" />
                                Yes
                                <input type="radio" id="AnimalLiabCovN" name="AnimalLiabilityCoverageRadio" ng-model="ModelData.AnimalLiabCov"
                                    value="N" />
                                No
                            </label>
                        </div>
  </div>

我想在选中复选框时显示 DIV,并在取消选中时隐藏。选择复选框并在取消选择复选框时隐藏复选框时,上述代码工作正常。但是在第一次之后它不起作用。勾选后不显示DIV。

【问题讨论】:

    标签: javascript angularjs


    【解决方案1】:

    你试过这样吗?这是fiddle 效果很好。

    <input type="checkbox" id="Animals" name="Animals" ng-model="ModelData.Animals" />
    <div class="form-group" ng-show="ModelData.Animals">
      <label for="FirstName" class="col-md-9">
        Are you interested in Animal Liability Coverage?
      </label>
      <div class="col-md-3">
        <label>
          <input type="radio" id="AnimalLiabCovY" name="AnimalLiabilityCoverageRadio" ng-model="ModelData.AnimalLiabCov" value="Y" /> Yes
          <input type="radio" id="AnimalLiabCovN" name="AnimalLiabilityCoverageRadio" ng-model="ModelData.AnimalLiabCov" value="N" /> No
        </label>
      </div>
    </div>
    

    【讨论】:

    • 谢谢泰勒。我知道我错过了什么。
    【解决方案2】:

    我认为您正在寻找 ng-true-valueng-false-value

    <div ng-app>
        <div >
            <input type="checkbox" ng-true-value="A" ng-false-value="B" ng-model="check"/>        
        </div>
    
        <div ng-show="check == 'A'">
            Checked
        </div>
    </div>
    

    Fiddle

    【讨论】:

      【解决方案3】:
      <body ng-app>
           <label>Wolf: <input type="checkbox" ng-model="Wolf" ng-init="checked=true" /></label><br/>
           <label>Tiger: <input type="checkbox" ng-model="Tiger" ng-init="checked=false" /></label><br/>
           <label>Lion: <input type="checkbox" ng-model="Lion" ng-init="checked=false" /></label><br/> 
           Show when checked:
           <div ng-if="Wolf">
           <span> This is removed when the wolf is checked.
           </span>
           </div>
      
      <div ng-if="Tiger">
          <span> This is removed when the tiger is checked.
          </span>
      </div>
      <div ng-if="Lion">
          <span> This is removed when the lion is  checked.
          </span>
      </div>
      </body>
      

      【讨论】:

        【解决方案4】:

        输入类型复选框在 ng-model 中返​​回 true false,所以我只使用它。它的工作

           <div ng-app>
           <div >
              <input type="checkbox" ng-model="check"/>        
          </div>
        
          <div ng-show="check == true">
             Checked
          </div>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-01-29
          • 1970-01-01
          • 2016-05-15
          • 1970-01-01
          • 2017-01-31
          • 1970-01-01
          相关资源
          最近更新 更多