Могут ли jQuery Datatables изменять значения, возвращаемые с сервера для просмотра клиентом? - PullRequest
1 голос
/ 04 ноября 2011

Я использую плагин jquery DataTables для сортировки таблиц и манипулирования ими.При вызове на стороне сервера мои данные возвращают целое число (0 или 1).Если бы я делал простой вызов в php, это было бы просто, но я пытаюсь отобразить «индивидуальный» или «семейный» на основе 0 или 1, возвращенного с сервера.

Я уверен, что это необходимо сделать в фактической функции Datatables:

$('#example').datables();

Можно ли отобразить строку при наличии целого числа в таблицах данных?

Примечание: манипулирование в самом скрипте php является , а не допустимым решением, поскольку вызов создается динамически с самого начала.

Ответы [ 2 ]

3 голосов
/ 04 ноября 2011

Да, это можно сделать относительно легко.Я полагаю, что это построчно, поэтому лучше всего использовать fnRowCallback при инициализации.Примерно так (просто пример; я не знаю ваших полных данных):

"fnRowCallback": function( nRow, aData, iDisplayIndex, iDisplayIndexFull ) {

  /* Create some variables mainly for legibility. */
  var family = aData['familyStatus']; // if using 3D with mDataProp
  // var family = aData[2]; // if using 2D array with index

  var famColumn = 2; // you could do this inline if you really want; I find a variable easier to keep track of
  var visibleString = "individual";

  if (family) { // adjust accordingly if condition isn't properly tested this way (ie. if the truthiness of your "1" isn't panning out
    visibleString = "family"; // default is individual, but if family is true then update the variable
  }
  $('td:eq('+famColumn+')', nRow).text(visibleString);

  return nRow;
}
0 голосов
/ 04 ноября 2011

Взгляните на http://datatables.net/usage/callbacks#fnPreDrawCallback. Эту функцию вы можете переопределить непосредственно перед рисованием таблицы. Вы можете поставить свою функцию здесь?

...