2017-01-25 8 views
0

В настоящее время я работаю над своей функцией обновления для своего проекта. У меня выпадающее меню для групп. Я хочу отобразить текущее выбранное значение/вариант указанного выпадающего списка. Значение будет получено из базы данных SQLite. В приведенном ниже коде отображаются ТОЛЬКО параметры, полученные из базы данных, но не выбранное выбранное значение.Как отобразить текущее выбранное значение из базы данных в выпадающем списке

HTML:

 <select name="groups" ng-model="memProfAdd.groups"> 
       <option ng-repeat="group in memGroups" value="{{group.id}}"> 
        {{group.name}} 
       </option> 
     </select> 

ЯШ:

//DROPDOWN: Member Groups 
    var query = "SELECT id, name FROM groups"; 
    $cordovaSQLite.execute(db, query, []).then(function(res){ 
    if (res.rows.length > 0) { 
     for (var i=0; i < res.rows.length; i++) { 
     $scope.memGroups.push(res.rows.item(i)); 
     } 
    } 
    }, function(err){ 
    $cordovaToast.showShortBottom('Something Went Wrong').then(function(success){}, function(err){}); 
    console.log(err.message); 
    }); 
+0

, где вы хотите, чтобы отобразить текущее выбранное значение? – Sravan

+0

Я хочу отобразить его также в раскрывающемся меню. Например, текущее выбранное значение (полученное из базы данных) является Group One, отображаемый/выбранный вариант также является «Group One» –

ответ

0

Для этого необходимо присвоить некоторое значение в $scope.memProfAdd.groups первой.

//DROPDOWN: Member Groups 
    var query = "SELECT id, name FROM groups"; 
    $cordovaSQLite.execute(db, query, []).then(function(res){ 
    if (res.rows.length > 0) { 
     for (var i=0; i < res.rows.length; i++) { 
     $scope.memGroups.push(res.rows.item(i)); 
     } 
     $scope.memProfAdd.groups = $scope.memGroups[0].id; 
    } 
    }, function(err){ 
    $cordovaToast.showShortBottom('Something Went Wrong').then(function(success){}, function(err){}); 
    console.log(err.message); 
    }); 
+0

, каким будет следующий шаг после этого? –

+0

Вы получили выбранное значение после этого кода? – Sravan

+0

как я могу назвать значение $ scope.memProfAdd.groups = $ scope.memGroups [0] в моем html-коде? –

0

Это работает для меня:

HTML

<label class="item item-input item-select"> 
      <span class="input-label"> 
       <b>Religion</b> 
      </span> 
      <select name="religions"> 
       <option selected>{{currentReligion.name}}</option> 
       <option ng-repeat="religion in otherReligions" 
       value="{{religion.id}}"> 
        {{religion.name}} 
       </option> 
      </select> 
     </label> 

JS:

//Get selected current religion 
    $scope.currentReligion = []; 
    var query = "SELECT religions.name FROM members " 
    + "INNER JOIN religions ON members.religion_id=religions.id WHERE members.id=?" 
    $cordovaSQLite.execute(db, query, [$scope.memberID]).then(function(res){ 
    if (res.rows.length > 0) { 
     for (var i=0; i < res.rows.length; i++) { 
     //$scope.religion.push(res.rows.item(i)); 
     $scope.currentReligion = res.rows.item(0); 
     } 
    } 
    }, function(err){ 
    $cordovaToast.showShortBottom('Something Went Wrong').then(function(success){}, function(err){}); 
    console.log(err.message); 
    }); 

    //Get other religions 
    $scope.otherReligions = []; 
    var query = "SELECT religions.name FROM religions WHERE religions.name != ?" 
    $cordovaSQLite.execute(db, query, [$scope.currentReligion]).then(function(res){ 
    if (res.rows.length > 0) { 
     for (var i=0; i < res.rows.length; i++) { 
     $scope.otherReligions.push(res.rows.item(i)); 
     // $scope.currentReligion = res.rows.item(0); 
     } 
    } 
    }, function(err){ 
    $cordovaToast.showShortBottom('Something Went Wrong').then(function(success){}, function(err){}); 
    console.log(err.message); 
    }); 

 Смежные вопросы

  • Нет связанных вопросов^_^