因此,我使用backbone.js一次为多个数据获取多个条目。这些数据将最终形成一个时间表。我现在需要做的是弄清楚如何不断检查输入到一个项目视图中的三个数据字段,并在另一个项目视图中重复。在Backbone.js验证
下面是代码
<div class="grid_16 lb-bg"> <div class="clearfix form-box bot-p bot-m">
<div >
<label for="ClassTimes[{{ count }}].ClassId">Class</label> <br/>
<select id="ClassTimes[{{ count }}].ClassId" name="ClassTimes[{{ count }}].ClassId" class="ClassList" style="Width: 20%">
@foreach (var c in Model.Classes)
{
<option value="@c.Value">@c.Text</option>
}
</select>
</div>
<div >
<label for="ClassTimes[{{ count }}].RoomId">Room</label> <br/>
<select id="ClassTimes[{{ count }}].RoomId" name="ClassTimes[{{ count }}].RoomId" style="Width: 20%">
@foreach (var c in Model.Rooms)
{
<option value="@c.Value">@c.Text</option>
}
</select>
</div>
<div >
<label for="ClassTimes[{{ count }}].SessionId">Class Session</label> <br/>
<select id="ClassTimes[{{ count }}].SessionId" name="ClassTimes[{{ count }}].SessionId" class="SessionList MakeWide" style="Width: 20%">
@foreach (var c in Model.Sessions)
{
<option value="@c.Value">@c.Text</option>
}
</select>
</div>
<div >
<label for="ClassTimes[{{ count }}].DayId">Day</label> <br/>
<select id="ClassTimes[{{ count }}].DayId" name="ClassTimes[{{ count }}].DayId" class="MakeWide" style="Width: 20%">
@foreach (var c in Model.Days)
{
<option value="@c.Value">@c.Text</option>
}
</select>
</div>
这里是骨干代码
window.CreateAssign = (function() {
var CreateAssign = {};
var subs = new Array();
//The next of kin item list view
AssignItemView = Backbone.View.extend({
tagName: 'div',
initialize: function() {
//bindall
_.bindAll(this, 'render');
this.template = _.template($('#SFTemplate').html());
this.render();
},
render: function() {
$(this.el).html(this.template({
count: subs.length
})).fadeIn();
return this;
}
,
remove: function() {
$(this.el).fadeOut('fast', function() {
$(this).remove();
});
return false;
}
});
function subUpdated() {
if (subs.length > 0) {
$('#removeassign').fadeIn();
}
else {
$('#removeassign').fadeOut();
}
}
CreateAssign.Init = function() {
$('#addassign').click(function() {
var item = new AssignItemView();
subs.push(item);
$('#classlist').prepend($(item.el).fadeIn('fast'));
subUpdated();
return false;
});
$('#removeassign').click(function() {
if (subs.length > 0) {
subs.pop().remove();
}
subUpdated();
return false;
});
};
return CreateAssign;
})(this, this.document);
$(function() {
CreateAssign.Init();
});
所以这段代码是采取一些类和会话,r OOM和星期几。
我的验证需要确保同一会话中同一天没有两个类被选中。
我该如何去设置事件或任何我会用来查看在上一个itemview中选择的数据?
是'ClassTimes'骨干集合吗?它似乎是一个数组。是'ClassTimes'骨干模型中的元素吗?我只问,因为你没有使用'model.escape(“RoomId”)' – timDunham 2012-03-07 00:15:48