数据表未捕获类型错误

时间:2016-04-22 22:24:29

标签: javascript jquery html5 datatables

我有数据表和GridRowCount()来获取html表中指定组的行数,jfiddle网站是here。当我运行代码时,chrome浏览器会抛出一个未被捕获的类型错误(...).live不是一个函数。


显示控制台的错误。



rowtoggle.js:30 Uncaught TypeError: $(...).live is not a function
rowtoggle.js:30 Uncaught TypeError: $(...).live is not a functionGridRowCount @ rowtoggle.js:30(anonymous function) @ rowtoggle.js:16i @ jquery-1.12.2.min.js:2j.fireWith @ jquery-1.12.2.min.js:2n.extend.ready @ jquery-1.12.2.min.js:2K @ jquery-1.12.2.min.js:2
Navigated to http://localhost/datacentre/admin/request_pending.php
rowtoggle.js:30 Uncaught TypeError: $(...).live is not a functionGridRowCount @ rowtoggle.js:30(anonymous function) @ rowtoggle.js:16i @ jquery-1.12.2.min.js:2j.fireWith @ jquery-1.12.2.min.js:2n.extend.ready @ jquery-1.12.2.min.js:2K @ jquery-1.12.2.min.js:2
Navigated to http://localhost/datacentre/admin/request_pending.php





下面是Datatables和GroupRowCount()插件的代码。



$( document ).ready(function() {
			$('#example').dataTable({
				
		   	 "bLengthChange": false,
              "bPaginate": false,
              "bJQueryUI": true 				
			}).rowGrouping({
        iGroupingColumnIndex: 1,
       	sGroupingColumnSortDirection: "asc",
       	iGroupingOrderByColumnIndex: 0 ,  
		bExpandableGrouping: true,
        bExpandSingleGroup: false,
        iExpandGroupOffset: -1,
        asExpandedGroups: [""]
    });
	GridRowCount();
});

function GridRowCount() {
            $('span.rowCount-grid').remove();
            $('input.expandedOrCollapsedGroup').remove();

            $('.dataTables_wrapper').find('[id|=group-id]').each(function () {
                var rowCount = $(this).nextUntil('[id|=group-id]').length;
                $(this).find('td').append($('<span />', { 'class': 'rowCount-grid' }).append($('<b />', { 'text': rowCount })));
            });

            $('.dataTables_wrapper').find('.dataTables_filter').append($('<input />', { 'type': 'button', 'class': 'expandedOrCollapsedGroup collapsed', 'value': 'Expanded All Group' }));

            **$('.expandedOrCollapsedGroup').live('click', function () {
                if ($(this).hasClass('collapsed')) {**
                    $(this).addClass('expanded').removeClass('collapsed').val('Collapse All Group').parents('.dataTables_wrapper').find('.collapsed-group').trigger('click');
                }
                else {
                    $(this).addClass('collapsed').removeClass('expanded').val('Expanded All Group').parents('.dataTables_wrapper').find('.expanded-group').trigger('click');
                }
            });
        };
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:3)

.live()已在jQuery 1.7中弃用,并在1.9版中删除。您应该使用.on()

$('.expandedOrCollapsedGroup').on('click', function () {
//Your code
})