2012-09-25 187 views
2

,因爲這不是一個真正的問題,無法將數據保存到動態DOM,請除了要解決類似的問題,用下面的代碼忽略這個問題當表分揀機使用

我想畫當點擊動態生成的表格行時,多邊形到Google地圖上。看起來數據已經成功保存到那個dom中,但是不能在$ .each()函數之外再次讀取。

$.getJSON(url, function(json) { 
    $.each(json, function(index) { 
     var id = "tableLine_"+index; 
     tbody.append(
      '<tr id='+id+' class="tableLine">'+ 
      '<td>'+ this.status+ '</td>'+ 
      '<td>'+ this.name+'</td>'+ 
      '<td>'+ this.city+'</td>'+ 
      '<td>'+ this.street+'</td>'+ 
      '<td>'+ this.language+'</td>'+ 
      '<td>'+ this.distance+'</td>'+ 
      '</tr>' 
     ); 

     //save data to the specific 'tr' 
     $("tr#"+id).data("polygon",this.polygon); 

     //this proved that the data was saved 
     alert($("tr#"+id).data("polygon")); 
    }); 

    $("table").tablesorter({ 
     sortLocaleCompare: true, 
     widgets: ['zebra'] 
    }).tablesorterPager({ 
     container: $(".pager"), 
     size: 15 
    }); 
}); 

多邊形:

"polygon":[{"x":48.235752,"y":11.685345},{"x":48.21908,"y":11.686883}...] 

的單擊事件綁定到錶行的功能:

$('.tableLine').live('click', function (event){ 
    var polygon = $(this).data("polygon"); 

    if(polygon){ 
     addPolygon(polygon); 
    } 
}); 
+0

我終於發現表格分揀機導致了這個問題,當我將它從getJSON()中移出時,它將起作用。然而,列不能再被排序,因爲表格分類器的「初始化」期間表格數據不存在,因爲它已經被移出getJSON()函數。 – rekinyz

+0

是的,我也確定重建表格。 – webdeveloper

+0

我試圖將數據保存到獨立的DOM,仍然無法正常工作。雖然表格會重建,但獨立DOM如何?請提供 – rekinyz

回答

1

請提供您的jsFiddle例如,我可以看到你的代碼作品在我的演示中:http://jsfiddle.net/c5s5t/1/

+0

我真的應該先在jsfiddle中自己測試一下,它的工作原理!所以別的東西會導致這個問題!不管怎樣,謝謝你。 – rekinyz