Jquery datatables, флажки и asp.net - PullRequest
1 голос
/ 04 февраля 2012

Я работаю с таблицами данных Jquery с повторителями asp.net, и 90% всего работает нормально. Проблема в том, что у меня есть столбец флажков, и если я пролистываю проверяемую таблицу, проверяя некоторые поля, а затем отправляю, я получаю только последнюю страницу с подробностями, она забывает все остальные страницы, на которых отмечены флажки.

Здесь рассматривается более или менее:

http://www.datatables.net/forums/discussion/7700/repeater-checkbox-and-paging/p1

Тем не менее, я понятия не имею, как получить эти данные из обратной передачи asp.net, кто-нибудь пролил свет на то, как я смогу пройти через ретранслятор и получить все отмеченные флажки?

Спасибо.

Ответы [ 2 ]

1 голос
/ 15 февраля 2012

Я бы добавил обработчик кликов на каждый флажок, который добавляет / удаляет идентификатор выбранного флажка в некотором списке (например, в виде содержимого некоторого скрытого поля в виде списка, разделенного запятыми или чего-то подобного).

КогдаВы отправляете форму, вы можете прочитать это содержимое из Request ["hiddenFieldName"], разделить его запятыми и сохранить.

Относительно потерянных значений флажков при смене страницы прямого решения не существует.Мой выбор - привязать обработчик события «page» к datatable - что-то вроде этого:

$('#example')
    .bind('page',   function () { populateCheckboxes(  ); })
    .dataTable();  

функция populateCheckboxes будет вызываться при каждом изменении страницы, и здесь вы можете пройти через все флажки в таблице и проверить,их значение находится в списке в скрытом поле.

Извините, но для этого нет более простого решения, однако это не слишком сложный сценарий.

Jovan

0 голосов
/ 29 марта 2012

Используйте приведенный ниже подход в своем коде.«rptrPayableItems» - это имя ретранслятора.

foreach (RepeaterItem ri in rptrPayableItems.Items){                    
  CheckBox cbPaid = (CheckBox)ri.FindControl("chkbxPayItem");
  if (cbPaid.Checked){       
    //Do your operation here for checked checkbox.
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...