angularjs:在数据库的下拉列表中设置所选项目

时间:2017-01-31 04:47:10

标签: angularjs

我预定义字段的下拉列表很少。现在我正在对数据库进行ajax调用并获取数据。 数据来自数据库,我可以在firebug(网络选项卡)中看到数组。

我想在下拉列表中将此数据设置为选中状态。在文本框中很简单。 但我很难用下拉菜单。

下面的Ajax代码

formApp.controller('getprofile', function($scope,$http){
     $http({
                            url: 'get_profile.php',
                            method: "GET",
                            params: {uid: uid}
                         })
                    .success(function(data) {

                        if (data.success) {

                      $scope.formData.dob = data.dob;
                      $scope.married = data.married;
}

Html代码

<input name="dob" id="dob" type="text" class="form-control textbox1" required="required" placeholder="Date of birth(dd-mm-yyyy) " ng-model="formData.dob">
<div class = "errorba" ng-show="dob">{{dob}}</div>
</div>

<div class="form-group" ng-class="{ 'has-error' : errormarried }">    
        <select id="married" name="married" class="selector form-control" ng-model="formData.married" required="required"> 

          <option value="0" selected="selected" >Maritial Status</option>
          <option value="1" >Single</option>
          <option value="2">Married</option>

        </select>
<span class="errorba" ng-show="errormarried">{{ errormarried }}</span>
</div>

来自ajax的数据 - 1 1表示单一。

请告知我的错误。

1 个答案:

答案 0 :(得分:1)

将控制器中的$scope.married = data.married;更改为$scope.formData.married = data.married;,因为控制器中的ng-model$scope变量不同。

在最坏的情况下,您的控制器中可能会出现未定义的错误formData。所以在使用赋值之前定义$scope.formData = {};

&#13;
&#13;
formApp.controller('getprofile', function($scope,$http){
     $http({
                            url: 'get_profile.php',
                            method: "GET",
                            params: {uid: uid}
                         })
                    .success(function(data) {

                        if (data.success) {
                      $scope.formData = {};
                      $scope.formData.dob = data.dob;
                      $scope.formData.married = data.married;
}
&#13;
&#13;
&#13;