【发布时间】:2015-12-04 10:45:32
【问题描述】:
我在主干和下划线方面做错了,以在模板中回显一些数据。
我有这个 php 文件:(test.php)
<?php
echo '{"data1":"test 1","data2":"test 2"}';
?>
还有这个模板:
<script type="text/template" id="tpl-hello-backbone">
<% _.each(messageView, function(messageView) { %>
<%= kroeg %>
<%= locatie %>
<% }); %>
</script>
这是我的主干文件:
var MessageModel = Backbone.Model.extend({
urlRoot : 'test.php'
});
var MessageView = Backbone.View.extend({
template:_.template($('#tpl-hello-backbone').html()),
render:function (eventName) {
$(this.el).html(this.template(this.model.toJSON()));
return this;
}
});
var messageModel = new MessageModel();
var messageView = new MessageView({model:messageModel});
messageModel.fetch({
success: function () {
$('#msg').html(messageView.render().el);
}
});
现在由于某种原因,这个回声:
test 2 test 1 test 2 test 1 test 2 test 1 test 2 test 1
所以 4 次而不是 1 次。
当我像这样使 json 更长时:
<?php
echo '{"kroeg":"test 1","locatie":"test 2"},{"kroeg":"test 1","locatie":"test 2"}';
?>
它什么都没有。我究竟做错了什么。我想我不明白一些东西,但我找不到什么。
希望有人能帮帮我!
您好, 梅林德克勒克
【问题讨论】:
-
为什么要迭代对象?你只需要输出
<%= kroeg %> <%= locatie %> -
是的,我知道。但正如我在帖子中解释的那样,我也希望它能够处理多个输入
标签: javascript json backbone.js underscore.js