【问题标题】:ng model value is not getting clearedng 模型值没有被清除
【发布时间】:2018-06-07 03:01:58
【问题描述】:

我有一个 ng 重复基于某些变量动态填充

类型
                                <div class="clothes-each-tag-wrapper">
                                    <div class="clothes-tag-label relative">
                                        <div class="dropdown-opacity-layer" ng-show="!showDropdownForType">
                                            <span>{{selectedBtmType}}</span>
                                            <span class="glyphicon glyphicon-ok pointer validate-tag" ng-hide="btmValidatedTags.type == selectedBtmType" ng-click="updateBtmTags('Type',selectedBtmType)"></span>
                                            <span class="glyphicon glyphicon-remove pointer" ng-click="showDropdownForType = true"></span>
                                        </div>
                                        <select class="ng-select-dropdown" required ng-model="selectedBtmType" ng-change="showDropdownForType = false" ng-init="selected='1'"
                                            name="btnTagForType" id="btnTagForType" ng-options="x for x in tags.Bottom.type"
                                            ng-show="showDropdownForType"></select> </div></div>

<div class="wrapper flex flex-wrap" ng-if="item.Bottom.type != selectedBtmType">   <div class="clothes-each-tag-wrapper"ng-repeat="(key, value) in tags[selectedBtmType]">
    <div class="clothes-tag-label uppercase">
      {{key}}
    </div>
    <div class="clothes-tag-label relative">
      <div class="dropdown-opacity-layer" ng-show="showDropdown1">
        <span>{{someselectedValue}}</span>
        <span class="glyphicon glyphicon-ok pointer" ng-hide = "btmValidatedTags[key] == someselectedValue" ng-click="updateBtmTags(key,someselectedValue,selectedBtmType)"></span>
        <span class="glyphicon glyphicon-remove pointer" ng-click="showDropdown1 = false"></span>
      </div>
      <select class="ng-select-dropdown" required ng-model='someselectedValue' ng-change="showDropdown1 = true" ng-init="selected='1'"
      name="btnTag2" id="btnTag2" ng-options="x for x in value" ng-show="!showDropdown1"></select>
    </div>   </div> </div>

现在的问题是,我正在使用下拉列表中的 ng 模型值,一旦选择它,我将该变量存储在 ng-model='someselectedValue' 中并隐藏下拉列表。之后,我在不同的 span 中显示该值。问题是我填充的 ​​json 具有相似的整体。如果 ng 重复变量基于标签 [selectedBtmType] 发生变化,我的复选框应该重置。但我可以看到之前的值已经被选中。

例如,如果在第一个 ng 重复中我有一个类型字段并且我选择了一个类型。但是当我填充第二个 ng 重复时(即使我有一个类型字段),不应预先选择类型

【问题讨论】:

  • 您问题中的复选框和 json 文件在哪里?您可以创建一个 plunkr 并分享链接吗?如果没有这些细节,我将无法正确理解您的情况。在 plunkr 上提供演示代码以获得快速解决方案

标签: javascript html angularjs angular-ngmodel


【解决方案1】:

每次填充前清除select的ng-model,我认为这会起作用,因为它没有任何数据可供选择,因为现在选择的值正在存储在该模型中,请告知它是否有效。

你必须使用delete someselectedValue

【讨论】:

  • 每次更改重复数据时如何删除 someselectedValue。我在哪里以及如何触发它
  • 在填充第二个 json 之前,您应该删除在第一步中选中复选框的基础值
  • 但我无法访问 ng 重复之外的 someselectedValue。因为如果我尝试在外部打印 someselectedValue 它不会显示任何内容。
  • 我刚刚编辑了代码并添加了代码的顶部。(对不起,我无法美化它)。请看一下
猜你喜欢
  • 2016-02-09
  • 2014-06-22
  • 1970-01-01
  • 2014-07-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多