2014-01-18 4 views
1

Начиная с углового и с помощью выпадающих меню выберите меня. В основном я получаю объект JSON, используя вызов AJAX, а затем заполняю свою форму с помощью JSON, используя AngularJS.AngularJS - получить свойства выбранной опции в раскрывающемся списке

Для выпадающего меню settings.metric = '2' из базы данных. Таким образом, выбранный «cm».

Мой вопрос: как мне получить выбранную в данный момент опцию и ее дату? Я попробовал scope.settings.metric, но все, что дает мне, это «2». Мне нравится получать другие свойства выбранных, например , имя и datavalue.

$scope.metrics = [ 
      {id:1,name:'in',value:'1',datavalue:'in'}, 
      {id:2,name:'cm',value:'2',datavalue:'cm'}, 
      {id:3,name:'px',value:'3',datavalue:'px'}, 
      {id:4,name:'pt',value:'4',datavalue:'pt'} 
      ]; 

<select 
    ng-model="settings.metric" // this is 2 from database call 
    ng-options="p.value as p.name for p in metrics" > 
</select> 

ответ

5

Это довольно просто с тем, что у вас уже есть. Вы должны это написать.

ng-options="p as p.name for p in metrics" 

Первый параметр «р» это значение, которое будет храниться Второй параметр «p.name» это значение отображается в опции.

Надеюсь, что помогает броте.

+0

Привет, спасибо, что ответим. Но мне было интересно, как получить доступ к выбранным в данный момент свойствам свойств извне в другой функции javascript ... любые идеи? –

+0

проверить значение 'ng-model' –

+0

@ ScottYu-UXdesigner. Если вы сделаете так, у вас есть весь объект в области scope.settings.metric –

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