Jquery Несколько флажков с несколькими страницами - PullRequest
0 голосов
/ 15 декабря 2009

Я применил jquery на своей странице jsp.

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

когда я нажимаю следующую кнопку, эти страницы пришли.

Но моя проблема в том, что я должен установить несколько флажков на всех страницах в то время, когда мне нужно

отправьте значения этих флажков, любой может ответить на этот вопрос.

Ответы [ 2 ]

1 голос
/ 15 декабря 2009

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

Чтобы сделать это в jQuery, используйте что-то вроде:

$("#tableContainer").load("/data/page/2");

Это загрузит содержимое из URL-адреса и вставит его в элемент с идентификатором "tableContainer".

Живые события в jQuery разрешат привязку ко всем флажкам (текущим и будущим):

$("#tableContainer input[type='checkbox']").live("click", function() {
    if($(this).is(':checked')) {
        checkedItems.add($(this).val());
    }
}

Это не завершено, так как вам нужно было бы удалить элемент из массива, если он не был отмечен, и изменить ваш сервлет, чтобы отправлять только часть изменяемой страницы. Но надеюсь, у вас есть идея.

jQuery имеет хорошую документацию по ajax и live событиям.

1 голос
/ 15 декабря 2009

Единственный реалистичный способ сделать это - прикрепить событие click ко всем вашим флажкам. Когда они нажаты, отключите AJAX-запрос к серверу, чтобы обновить статус этого конкретного флажка. Сохраните это состояние в базе данных, сеансе или другом месте.

Так, например:

$(function() {
  $(":checkbox").click(function() {
    $.get('/save/checkbox/url', {
      id: this.id,
      checked: this.checked
    });
  });
});

при условии:

<input type="checkbox" id="cb123">

Тогда, когда вы наконец захотите использовать эти результаты, получите подробную информацию оттуда.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...