jQuery:脚本记住它被触发的时间之间的值?

时间:2010-04-09 16:35:31

标签: jquery ajax session post save

我正在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

2 个答案:

答案 0 :(得分:1)

当你转到第2页时,我没有看到最近的“.paginationFullWidth”的ID属性更新为2.在我看来,这段代码总是会将你发送到第2页。当你显然在第2页上,该ID属性仍为1.

答案 1 :(得分:1)

假设您在代码中的其他位置声明了pageid,请不要在if和else块中重新声明它们。通过重新声明它们,你将它们的范围限制在那些块中。

从if {else}块中的varpage移除id