2013-02-11 115 views
0

我確實擁有存儲在數據庫中的html表格的內容,我使用jQuery從中提取數據,並通過從這些表創建JSON對象將其置於另一個表中。刪除無法刪除JSON對象

我得到的存儲表,並將其附加到DOM如下:

$('#divfortable).append(storedtable); 

下一步是要創造我的對象:

var tableObject = $('# divfortable tbody tr').map(function(i) { 
    var row = {}; 
    $(this).find('td').each(function(i) { 
     var rowName = columns[i]; 
     row[rowName] = $(this).text().trim(); 
    }); 
    return row; 
}).get(); 

在那裏我有一個現有的陣列有關列名稱。

下一步就是這些細節上傳到服務器:

data = { id: id, tableObject: tableObject }; 
$.ajax({      
dataType: 'json', 
url:'my_url', 
data: $.param(data), 
    error: function(jqXHR, textStatus, errorThrown) { },  
    success: function(data) { } 
}); 

它正常工作,我感到非常滿意的結果,但我的問題是重複的其它表的過程時。我想要以類似的方式獲取新表格並提取其內容,但我無法擺脫以前的結果。結果包含新加載的表格和前一個表格的結果,如果我再次重複一遍,它將包含所有3個表格的結果!

很明顯,我必須清空之前提取的所有對象和DOM元素,但我嘗試了不同的方法,但無濟於事。我從搜索互聯網和這個論壇蒐集到的,你可以使用delete或empty來銷燬tableObject,這樣你就可以創建一個全新的表,但它不能完成這項工作。

我試過如下:

delete tableObject; 

$('#divfortable).remove(storedtable); 
在成功的功能

,一起和單獨

我也用

$('#divfortable).remove(storedtable); 

我創建後我DAT一個對象

data = { id: id, tableObject: tableObject }; 

但在這種情況下,腳本不會進展到Ajax調用,而是通過顯示$('#divfortable)它顯示兩個表!

我該如何擺脫以前的結果?

+0

有一個「JSON對象」沒有這樣的事。 JSON是一種seralisation格式 – Alnitak 2013-02-11 11:56:09

回答

0

你應該能夠在第二次手術前簡單地清除當前#divfortable

$('#divfortable').empty();