Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript异常:未处理的方法大小()_Javascript_Jquery - Fatal编程技术网

Javascript异常:未处理的方法大小()

Javascript异常:未处理的方法大小(),javascript,jquery,Javascript,Jquery,我使用JQuery的tablesorter对我的表进行排序,但空表引发异常会带来问题。因此,我在脚本中添加了一个条件,但现在问题来自该条件: $(document).ready(function ($) { if($("#printerTable").find("tbody").size()>0){ $("#printerTable").tablesorter({ sortList: [[0, 0], [1, 0], [2, 0]] }); 例外情况是: Jav

我使用JQuery的tablesorter对我的表进行排序,但空表引发异常会带来问题。因此,我在脚本中添加了一个条件,但现在问题来自该条件:

$(document).ready(function ($) {
    if($("#printerTable").find("tbody").size()>0){
        $("#printerTable").tablesorter({ sortList: [[0, 0], [1, 0], [2, 0]] 
});
例外情况是:

Javascript执行错误:对象不处理属性或方法大小()

(翻译自法语)

所以我试着用
.length
方法代替,但没有效果

$(document).ready(function ($) {
    if($("#printerTable").find("tbody").length > 0){
        $("#printerTable").tablesorter({ sortList: [[0, 0], [1, 0], [2, 0]] });
    }
});
例外情况是:

JavaScript执行错误:无法从空引用获取属性“0”

你能看到我没有看到的吗?谢谢

jQuery的
size()
在版本1.8中被弃用,在jQuery 3.0中被完全删除,这仅仅是因为本机
length
属性做了同样的事情

$(document).ready(function() {
    if ( $("#printerTable").find("tbody").length > 0 ) {
        $("#printerTable").tablesorter({ 
            sortList: [[0, 0], [1, 0], [2, 0]]
        });
    }
});
第二个错误实际上与发布的代码无关,除非您实际上错过了关闭tablesorter函数和
if
条件

很可能是tablesorter插件没有收到正确的参数,jQuery的
size()
在版本1.8中被弃用,而在jQuery 3.0中被完全删除,这仅仅是因为原生
length
属性做了同样的事情

$(document).ready(function() {
    if ( $("#printerTable").find("tbody").length > 0 ) {
        $("#printerTable").tablesorter({ 
            sortList: [[0, 0], [1, 0], [2, 0]]
        });
    }
});
$('#printerTable tbody').children().length;
第二个错误实际上与发布的代码无关,除非您实际上错过了关闭tablesorter函数和
if
条件

很可能是tablesorter插件没有收到正确的参数

$('#printerTable tbody').children().length;
请尝试使用
children()
方法。 我希望它能起作用。 谢谢

请尝试使用
children()
方法。 我希望它能起作用。
谢谢。

也许当您使用某些属性时,您可以在chrome中试用! 比如说:

$(document).ready(function ($) {
    console.dir($("#printerTable"));
    //you will see all the properties! 

});

而且,您将知道如何使用正确的属性

当您使用某些属性时,您可以在chrome中尝试! 比如说:

$(document).ready(function ($) {
    console.dir($("#printerTable"));
    //you will see all the properties! 

});

而且,您将知道如何使用正确的属性

.length
是一个属性而不是一个方法,所以像使用
$(“#printerTable”).find(“tbody”).length>0
@Satpal这给了我另一个例外
。length
是一个属性而不是方法,所以像使用
$(“#printerTable”).find(“tbody”).length>0
@Satpal这给了我另一个例外是的,但这很奇怪,因为它可以处理非空表,或者至少我没有抛出异常。啊,是的,但很奇怪,因为它可以处理非空表,或者至少我没有抛出异常。