我使用以下脚本检索表:
$("#table").load("index #table", function(tableNew) { // code });
在我这样做之前,我喜欢将旧表存储在变量中。检索新表时,我想将其与旧表进行比较。
var tableCurrent = document.getElementById('table');
console.log(tableCurrent); // object
$("#table").load("index #table", function(tableNew) {
var htmlNew = $.parseHTML(tableNew);
var rowsNew = htmlNew[0].getElementsByTagName('tr');
console.log(tableCurrent); // null
// compare new with old
// insert new table in DOM
});
如何“访问”'load'回调中的旧表?我知道旧表将被删除,这是正确的。
答案 0 :(得分:1)
编辑:存储为jquery对象以避免命中旧引用,因为新的jQuery对象不是对旧表DOM元素的引用
var tableCurrent = document.getElementById('table');
console.log(tableCurrent); // object
var $tableCurrent = $('#table');
$("#table").load("index #table", function(tableNew) {
var htmlNew = $.parseHTML(tableNew);
var rowsNew = htmlNew[0].getElementsByTagName('tr');
console.log($tableCurrent); // this should be the jquery table object
console.log($tableCurrent[0]); // actual table element
// compare new with old
// insert new table in DOM
});