在插件init上访问jQuery $(this)对象

时间:2014-12-24 10:41:34

标签: jquery jquery-plugins this

关于在 twbsPagination 分页插件中访问$(this)对象的问题。

<ul class="dynamic-pagination pagination-sm" data-target="invoices"></ul>

onPageClick选项上,$(this)对象工作正常!

    $('.dynamic-pagination').twbsPagination({
        totalPages: 35,
        visiblePages: 7,
        onPageClick: function (event, page) {
            $($(this).attr('data-target')).text('Page ' + page);
        }
    });

但在href选项中,$(this)无效。

    $('.dynamic-pagination').twbsPagination({
        totalPages: 35,
        visiblePages: 7,
        href: 'admin?'+$(this).attr('data-target')+'_page={{number}}'
    });

我必须从$(this)选项访问href对象。我无法在网络和SO上找到解决方案。

1 个答案:

答案 0 :(得分:1)

您可以按照以下方式执行此操作:

$('.dynamic-pagination').each(function () {

    var $this = $(this), dataTarget = $this.attr('data-target');

    $this.twbsPagination({

        totalPages: 35,

        visiblePages: 7,

        href: 'admin?' + dataTarget + '_page={{number}}'

    });

});