В моем случае это отлично работает:
source:function(request, response){
var numSumResult = 0;
response(
$.map(tblData, function(rowData) {
if (numSumResult < 10) {
numSumResult ++;
return {
label: rowData.label,
value: rowData.value,
}
}
})
);
},
jQuery использования, не необходимо, и window.location.replace(...)
лучше всего моделирует перенаправление HTTP.
window.location.replace(...)
лучше, чем использование window.location.href
, потому что replace()
не сохраняет инициирующую страницу в истории сессии, означая, что пользователь не застрянет в бесконечном фиаско кнопки "Назад".
, Если Вы хотите моделировать кого-то нажимающего на ссылку, используйте location.href
, Если Вы хотите моделировать перенаправление HTTP, используйте location.replace
, Например:
// similar behavior as an HTTP redirect
window.location.replace("http://stackoverflow.com");
// similar behavior as clicking on a link
window.location.href = "http://stackoverflow.com";
Помогло бы, были ли Вы немного более описательными в том, что Вы пытаетесь сделать. При попытке генерировать разбитые на страницы данные, существуют некоторые опции в том, как Вы делаете это. Можно генерировать отдельные ссылки для каждой страницы, до которой Вы хотите смочь добраться непосредственно.
<a href='/path-to-page?page=1' class='pager-link'>1</a>
<a href='/path-to-page?page=2' class='pager-link'>2</a>
<span class='pager-link current-page'>3</a>
...
Примечание, что текущая страница в примере обрабатывается по-другому в коде и с CSS.
, Если бы Вы хотите, чтобы разбитые на страницы данные были изменены через Ajax, это - то, где jQuery вошел бы. То, что Вы сделали бы, добавляет обработчик щелчков к каждому из тегов привязки, соответствующих различной странице. Этот обработчик щелчков вызвал бы некоторый код jQuery, который идет и выбирает следующую страницу через Ajax и обновляет таблицу новыми данными. Пример ниже предполагает, что у Вас есть веб-сервис, который возвращает новые данные страницы.
$(document).ready( function() {
$('a.pager-link').click( function() {
var page = $(this).attr('href').split(/\?/)[1];
$.ajax({
type: 'POST',
url: '/path-to-service',
data: page,
success: function(content) {
$('#myTable').html(content); // replace
}
});
return false; // to stop link
});
});
var url = 'asdf.html';
window.location.href = url;
ПРЕДУПРЕЖДЕНИЕ: Этот ответ был предоставлен просто как возможное решение; очевидно, что это не лучшее решение, поскольку для этого требуется jQuery. Вместо этого предпочтите решение на чистом JavaScript.
$(location).attr('href', 'http://stackoverflow.com')