我正在jQuery中编写一个ajax脚本。该脚本从返回HTML的php文档中获取新页面或上一页。
如果,位于第1页,我单击下一步,脚本IS能够找到下一页编号(第2页),但是当我再次单击它时,脚本必须能够再次找到下一页编号(第3页) )并且在那一刻它没有。我想知道如何在触发脚本的时间之间保存变量,这样每次有人点击“下一步”时我只能+ 1,而当有人点击“上一次”时我可以为-1。
这是我的代码:
$('.buttonNeste').click(function(event){
event.preventDefault();
if (page == null || id == null ) {
var page = parseInt($(this).closest('.paginationFullWidth').attr('id')) + 1;
var id = $(this).closest('.paginationFullWidth').siblings('.jtextfill').children('h1').attr('id');
}
else {
var page = page + 1;
}
var target = $(this);
$.post( 'http://www.example.com/controllers/foo.php', {
'page': (
page
), 'id':
id
}, function(data) {
$(target).closest('.paginationFullWidth').siblings('.commentsContainer').html(data);
});
});
感谢您的时间。
亲切的问候,
的Marius
答案 0 :(得分:1)
当你转到第2页时,我没有看到最近的“.paginationFullWidth”的ID属性更新为2.在我看来,这段代码总是会将你发送到第2页。当你显然在第2页上,该ID属性仍为1.
答案 1 :(得分:1)
假设您在代码中的其他位置声明了page
和id
,请不要在if和else块中重新声明它们。通过重新声明它们,你将它们的范围限制在那些块中。
从if {else}块中的var
和page
移除id
。