【问题标题】:Get last activated data after clicked on button by jquery通过jquery单击按钮后获取最后激活的数据
【发布时间】:2015-12-25 01:55:24
【问题描述】:

我试图在一周内单击按钮时获取最后一个数据,但没有任何好的结果。我有一个这种格式的分页栏< 1 2 3 4... >,我需要在用户单击按钮时获取数据,以便像这样在 ajax 中进行服务器处理:

  • 点击按钮 {data number} 它将是:page = {data number} 并且 ajax 必须是:/getData/{page}

  • 点击按钮 2 ajax 将发送:/getData/2

  • 点击按钮 4 ajax 将发送:/getData/4

...但是 jquery 总是返回在我点击按钮之前激活的数据,例如:当我点击 2 然后点击 4 时,jquery 会提醒我点击了 2,然后点击另一个按钮会提醒4.所以它会在激活类更改为另一个按钮之前获取最后激活的数据。这是我用来获取数据的代码:

  var page = 1;
  function onActive(){
            page = $('.paginate_button.active>a').text();
            alert($('.paginate_button.active>a').data('dt-idx'));
        }

        $(document).on('click', '.paginate_button', function(e){
            e.preventDefault();
            onActive();
        });

html中的元素是这样的:

<li class="paginate_button active"><a tabindex="0" data-dt-idx="3" aria-controls="staff" href="#">3</a></li>

谢谢。

【问题讨论】:

    标签: javascript jquery html


    【解决方案1】:

    试试这个。

      var page = 1;
      function onActive(_cur){
                page = cur.text();//You should get the correct page number            
             //Do whatever you want with the page
            }
    
        $(document).on('click', '.paginate_button', function(e){
            e.preventDefault();
            onActive($(this));
        });
    

    【讨论】:

    • 对不起,现在我有另一个问题是 javascript 是函数之间的同步调用,所以 ajax 总是在单击之前调用最后一个活动值按钮。现在我正在尝试找到如何在 javascript 中进行非同步
    • 如果您认为您的问题现在无关紧要,那么您应该删除/修改它。如果您觉得我的回答对您有所帮助,请点赞。
    猜你喜欢
    • 2019-06-01
    • 1970-01-01
    • 2015-08-07
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多