Я пытаюсь создать страницу, используя backbone.js и underscore.js. Я хочу, чтобы на странице была кнопка, которая при нажатии добавляет содержимое формы в пустой тег на странице, используя определенный мной шаблон.
Вот мой пустой тег, в который я хочу, чтобы после нажатия кнопки помещался материал шаблона:
<div id="playView"></div>
<input type="button" id="addQuestion" value="Add Question" />
Вот мой шаблон, куда должны идти данные формы:
<script id="viewTemplate" type="text/template">
<div id="stemView">{{ Stem }}</div>
<label for="answer1"> a)</label><div>{{ answer1View }}</div>
<label for="answer2"> b)</label><div>{{ answer2View }}</div>
<label for="answer3"> c)</label><div>{{ answer3View }}</div>
<label for="answer4"> d)</label><div>{{ answer4View }}</div>
</script>
А вот форма, которую заполнит пользователь:
<form>
<textarea id="stem"><textarea>
<textarea id="answer1"></textarea>
<textarea id="answer2"></textarea>
<textarea id="answer3"></textarea>
<textarea id="answer4"></textarea>
</form>
А вот соответствующий код backbone.js. У меня вопрос, что мне делать в случае? Как мне получить данные из формы, затем в viewTemplate, а затем в пустой тег div (playView)?
wizard.PlayView = Backbone.View.extend({
initialize: function () {
this.model.bind('change', _.bind(this.render, this));
},
el: '#playView',
events: {
'click button#addQuestion': 'addQuestion'
}
addQuestion: function () {
$(this.el).append();
}
});
this.$el
вместо$(this.el)
для ссылки на элемент представления. Кроме того, вы можете использоватьthis.model.on('change',this.render,this)
для предоставления контекста обратного вызова.bind
— это псевдоним дляon
. - person fbynite   schedule 23.08.2013