【问题标题】:when i close the modal, checked inputs became unchecked当我关闭模式时,选中的输入变为未选中
【发布时间】:2016-01-17 01:37:44
【问题描述】:

我使用复选框类型的输入来缩小我的搜索结果; 问题是我将复选框放入模式中,当我选中其中的许多并关闭模式时,选中的输入变为未选中。

我希望每次打开模式输入时都检查一下。

 var filterTemps = [
        "partial/uicomponent/mdlFilters/mdl.estateType.filter.html",
    ];

    $scope.showReleventMdl = function(num){

        var filtersModal = $modal({
            backdrop:true,
            placement:'top',
            templateUrl :  filterTemps[num],
            controller : 'filterCtrl',
            show: false
        });

        filtersModal.$promise.then(filtersModal.show);
    };
<!-- trigger the function for call modal -->
 <ul class="nav navbar-nav">
   <li>
     <a href="" ng-click="showReleventMdl(0)" ng-bind="string.pages.form.estateType"></a>
     </li>
   ...
</ul>
--------------------------------------------------
<!-- my Modal Template -->
<div class="modal-body">

                <ul class="filterList">
                    <li class="filterListItem half" ng-repeat="item in string.pages.mainPage.estateTypes">
                        <input id="estateType{{$index}}" ng-click="checked(item)" type="checkbox" class="filterCheck">
                        <label for="estateType{{$index}}" ng-bind="item"></label>
                    </li>
                </ul>

            </div>

我想知道有没有办法存储检查的输入并使用 modal 将它们带回检查状态? TNKS很多

【问题讨论】:

  • 将输入绑定到控制器中的某个范围

标签: javascript angularjs checkbox angular-strap angularjs-ng-checked


【解决方案1】:

您没有为 $scope 对象设置任何值。试试这个...

<div class="modal-body">    
  <ul class="filterList">
    <li class="filterListItem half" ng-repeat="item in string.pages.mainPage.estateTypes">
      <input id="estateType{{$index}}" type="checkbox" ng-model="checkbox[$index].checked" class="filterCheck">
      <label for="estateType{{$index}}" ng-bind="item"></label>
    </li>
  </ul>

</div>

然后,在您的控制器中,您可以为您的复选框值设置 $scope 对象。

$scope.checkbox = {};

【讨论】:

  • 我知道你在说什么,但问题是当我单击按钮以再次显示我的控制器调用的模式并设置默认值时,因为我在此控制器中定义了我的变量。
  • @AmirRezvani 那么你就知道如何解决这个问题了。如果将默认数据放入私有变量中,则可以将其与在父控制器中创建的 $scope 变量进行比较以存储用户输入。如果用户输入变量为空或未定义,因为他们之前没有打开模式,则使用私有变量数据填充它。
  • 是的,我把这些变量放在 sessionStorge 中! TNKS
猜你喜欢
  • 2019-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-14
  • 2014-07-05
  • 1970-01-01
  • 2020-11-04
相关资源
最近更新 更多