AngularJS,你如何让`select`自动刷新?

时间:2016-11-09 11:16:36

标签: angularjs select angularjs-scope ng-repeat

我遇到问题'选择'当我在第一个选择一个选项时,选择'我没有在第二次'选择'中同时看到结果,我必须使用' F5'手动刷新页面。所以我可以看到结果。 的 add_parcelle.html

  <div class="row">
    <div class="col-md-12">
        <div class="form-group" ng-class="{'has-error':Form.type.$dirty && Form.type.$invalid, 'has-success':Form.type.$valid}">
            <label for="form-field-select-2">
                Type de la parcelle <span class="symbol required"></span>
            </label>
            <select name="type" ng-model="type" title="select" class="cs-select cs-skin-elastic" ng-change="sendType(Form.type.$modelValue)" required>
                <option value="" disabled selected>Selectionnez un type</option>
                <option value="Lot">Lot</option>
                <option value="Parcelle">Parcelle</option>
                <option value="Zone">Zone</option>
                <option value="Plant">Plant</option>
            </select>
            <span class="error text-small block" ng-if="Form.type.$dirty && Form.type.$invalid">Champ bligatoire</span>
        </div>
    </div>
</div>

<div class="row">
    <div class="col-md-12">
        <div class="form-group" ng-class="{'has-error':Form.idParcelle.$dirty && Form.idParcelle.$invalid, 'has-success':Form.idParcelle.$valid && Form.idParcelle.$dirty}">
            <label for="form-field-select-2">
                Parent de la parcelle <span class="symbol required"></span>
            </label>
            <select data-ng-init="showParents()" name="idParcelle" ng-model="idParcelle" title="select" class="cs-select cs-skin-elastic">
                <option value="" disabled selected>Selectionnez un parent</option>
                <option value="1">Aucun parent</option>
                <option ng-repeat="p in parcelle" value="{{p.idParcelle}}"><div ng-if="p.parent.libelle">{{p.libelle}}</div></option>
            </select>
            <span class="error text-small block" ng-if="Form.idParcelle.$dirty && Form.idParcelle.$invalid">Champ bligatoire</span>
        </div>
    </div>
</div>

ParcelleController.js

$scope.sendType= function(type){

    $sessionStorage.typeParc=type;
    console.log($sessionStorage.typeParc);

};
$scope.showParents = function() {


    if($sessionStorage.typeParc=='Parcelle')
        $scope.showLots();
    else if($sessionStorage.typeParc=='Zone')
        $scope.showParcels();
        else if($sessionStorage.typeParc=='Plant')
            $scope.showZones();


};

在第一个&#39;选择&#39;我用:

  

纳克变=&#34; sendType(Form.type $ modelValue)&#34;

所以我可以存储Form.type并在函数showParents()中使用它,在第二个&#39;选择&#39;

中显示结果
  

数据-NG-INIT =&#34; showParents()&#34;

所以,这是我的问题!! 提前谢谢:)

编辑古斯塔沃加布里埃尔&#39; 这是结果: enter image description here

我没有在&#39;选择&#39;中看到列表。但是我在控制台中看到它:p

1 个答案:

答案 0 :(得分:0)

在第一个选择中,将ng-change修改为:

ng-change="sendType(Form.type.$modelValue); showParents();"

希望有帮助=)