Обратный вызов форматтера DataGrid не работает должным образом - PullRequest
0 голосов
/ 26 апреля 2011

Я использую следующую компоновку для моей DataGrid Dojo 1.5:

function getGridLayout() {
  return [{
    name: "Stylist",
    field: "stylist",
    width: "100px"
  },
  {
    name: "Service",
    field: "service",
    width: "200px"
  },
  {
    name: "Length",
    field: "length",
    width: "50px"
  },
  {
    name: " ",
    field: "remove",
    width: "30px",
    formatter: getRemoveFormatter
  }];
}

И вот мое определение обратного вызова:

function getRemoveFormatter(item) {
  console.log(item);
}

И вот как я создаю свою DataGrid:

dojo.ready(function() {
  var store = new dojo.data.ItemFileWriteStore({data:{items:[]}});
  window.grid = new dojox.grid.DataGrid({store: store, structure: getGridLayout()}, document.createElement("div"));
  dojo.byId("services_grid").appendChild(grid.domNode);
  grid.startup();
  observeAppointmentServiceAddClick(window.grid);
  getAppointmentItems();
});

По какой-то причине item всегда undefined.Есть идеи, почему это может быть?

1 Ответ

0 голосов
/ 27 апреля 2011

Причина в том, что всякий раз, когда я добавляю строку, я не определяю что-либо для столбца «удалить», поэтому естественно, что элемент в этой ячейке будет неопределенным.

...