jquery没有从按钮获取动态更新的数据

时间:2017-08-21 03:25:56

标签: jquery click onclicklistener

我创建了一个按钮,用于更新自身的值,当点击(再次)时,jquery没有获取更新的值..

首次点击之前:

RSACryptoServiceProvider

jQuery:

<a href="news" data-start="2" data-limit="2" data-page="2" class="btn load-more">Load more</a>

按预期警告“2 2 2”。

更新后的按钮(首次点击后):

$(document).on('click','.load-more',function(e){
        e.preventDefault();

        var start   = $(this).data('start'),
            limit   = $(this).data('limit'),
            page    = $(this).data('page'),
            type    = $(this).attr('href');

        alert( start+' '+limit+' '+page );

        $.ajax({
            url:'/index.php?route=news/news/getnext&start=4&limit=4&page=2',
            method:'GET',
            data:{start:start,limit:limit,page:page},
            dataType:'json',
            success:function(data){

                .... doing stuff ....

                if(data.pagination === true){
                    $('.load-more').attr('data-start',data.start).attr('data-limit',data.limit).attr('data-page',data.next);
                } else {
                    $('.load-more').fadeOut(250,function(){
                        $(this).remove();
                    });
                }

            }
        })(data);
    });

然后我再次点击该按钮,它仍然提醒“2 2 2”,而不是“4 2 3”,该按钮已更新为..

有关于此的任何想法吗?我似乎无法使它工作,我已经尝试了基本的点击功能,并且也委托但它没有按预期工作。

1 个答案:

答案 0 :(得分:1)

更新以下代码后:

 <a href="news" data-start="4" data-limit="2" data-page="3" class="btn load-more">Load more</a>

    $(document).on('click','.load-more',function(e){
    e.preventDefault();

    var start   = $(this).attr('data-start');
        limit   = $(this).attr('data-limit');
        page    = $(this).attr('data-page');


    alert( start+' '+limit+' '+page );
});