Ember js перебирает массив объектов json для создания элементов

0

Пытается динамически создавать выбранный ввод с опциями из массива json объектов. Массив объектов JSON выглядит так:

var curr_sel = [
    {v:"1", n:"USD"},
    {v:"2", n:"GBP"},
    {v:"3", n:"CAD"},
    {v:"4", n:"AUD"},
    {v:"5", n:"EUR"}
];

И мой шаблон просмотра имеет следующее:

<select>
{{#each opt in curr_sel}}
    <option value="{{ opt.v }}" >{{ opt.n }}</option>
{{/each}}
</select>

Но это создает элемент select без параметров. Незлая помощь. Еще лучше, если это означает использование класса EmberJS select http://emberjs.com/api/classes/Ember.Select.html

Теги:
arrays
ember.js

1 ответ

1
Лучший ответ

Лучше использовать тег select используя Ember.Select.

Вот пример:

шаблон

<script type="text/x-handlebars" data-template-name="application">   
  {{view Ember.Select content=curr_sel
    optionLabelPath="content.n"
    optionValuePath="content.v"
    selection=selectedCurrency}}
</script>

Javascript

App = Ember.Application.create({});

App.ApplicationController = Ember.Controller.extend({
    curr_sel: [
        {v:"1", n:"USD"},
        {v:"2", n:"GBP"},
        {v:"3", n:"CAD"},
        {v:"4", n:"AUD"},
        {v:"5", n:"EUR"}
    ],
    selectedCurrency: null,
    selectedCurrencyChanged: function() {
        console.log(this.get('selectedCurrency.n'));
    }.observes('selectedCurrency')
});

Посмотрите на эту скрипку, чтобы увидеть это в действии http://jsfiddle.net/marciojunior/FJkEr/

  • 0
    Спасибо большое, это сработало как шарм!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню