У меня есть веб-приложение, которое в настоящее время использует JQGrid, но я пытаюсь внедрить Backbone.js для улучшения организации кода. То, что я пытаюсь сделать, это получить данные с сервера с помощью коллекции, а затем добавить информацию JSON в мой определенный JQGrid, но я не могу заставить его работать. Мой JQGrid определяется следующим образом:
var tareasHumanasTable = $("#grillaTH").jqGrid({
datatype: 'local',
height: 'auto',
colNames:[ colNames...],
colModel:[ colModel...]
}
И моя модель и коллекция определяются следующим образом:
window.TareaHumana = Backbone.Model.extend();
window.TareaHumanaCollection = Backbone.Collection.extend({
model: TareaHumana,
url: "bandejaTareas/buscarTH"
});
У меня есть кнопка, при нажатии которой начинается связь с сервером. Сейчас делает так:
$(function(){
$("#botonBuscar").bind('click',function(){
var tareaHumanaList = new TareaHumanaCollection();
tareaHumanaList.fetch({data: $("#formBandejaTareas").serializeObject()});
//alert("tareaHumanaList.toJSON(): " + tareaHumanaList.toJSON());
tareaHumanaList.each(function(tareaHumana, i){
//alert("tareaHumana.toJSON(): " + tareaHumana.toJSON());
tareasHumanasTable.jqGrid('addRowData', (i + 1), tareaHumana.toJSON());
});
Этот код вообще не работает. С помощью Firebug я убедился, что сервер отправляет данные в правильном формате, но код не работает. Самое странное, что когда я раскомментирую строки "alert(...)", все начинает работать.