簡體   English   中英

Javascript異常:未處理的方法size()

[英]Javascript Exception : unhandled method size()

我使用JQuery的表排序器對表進行排序,但是我遇到了一個空表引發異常的問題。 所以我在腳本中添加了一個條件,但是現在問題出在該條件上。

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

例外是:

JavaScript執行錯誤:對象無法處理屬性或方法size()

(從法語翻譯)

所以我嘗試使用.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中被完全刪除,這僅僅是因為native length 屬性執行相同的操作

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

第二個錯誤與發布的代碼無關,除非您實際上錯過了tablesorter函數和if條件的結尾。

很可能是tablesorter插件未收到正確的參數

$('#printerTable tbody').children().length;

請嘗試使用children()方法代替。 我希望它能起作用。 謝謝。

也許當您使用某些屬性時,可以在chrome中嘗試! 像這樣:

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

});

並且,您將知道使用正確的屬性!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM