2016-12-19 24 views
0

我得到未捕獲的typeerror無法讀取以下代碼的未定義錯誤的屬性'拆分' 任何人都可以請幫助我爲什麼得到這個。感謝未捕獲的typeerror無法讀取未定義的屬性「拆分」

$("#registration_date1, #registration_date2, #last_login1, #last_login2, #expiry_date, #status, #role," + 

     " div#userTable_filter :input").bind("keyup change", function() { 

    var userIds = []; 
    var data = $('#userTable').dataTable().fnSettings().aiDisplay; 
    var allData = $('#userTable').dataTable().fnSettings().aoData; 

    $.each(data, function (i, val) { 
     var url = allData[val]._aData[allData[val]._aData.length - 1]; 
     var userId = url.split('/')[3].split('"')[0]; 
     userIds.push(userId); 
    }); 
+1

你的'url'是否總有3次出現'/'?你在做'url.split('/')[3]'而不是首先檢查數組是否有四個項目,所以你嘗試抓取的項目可能不存在。 – Santi

+0

ye cl'userId'。還要注意數組是基於0的。 –

回答

-1
var allData = $('#userTable').dataTable().fnSettings().aoData; 

在這條線,你確定你需要.aoData?因爲它似乎在其他地方使用.aData陣列。檢查拼寫。

+0

他沒有在'allData'上調用'.split()'。我在腳本的任何地方都看不到'.aData'的用法。 – Barmar

+0

@Bamar'.aoData'用於'allData'中,然後在'url'中使用,然後是'.split()'-ed –

+0

如果'.aoData'錯誤,那麼錯誤會抱怨嘗試使用'.allData [val]',這是調用'.split()'之前的行。 – Barmar

相關問題