2015-10-27 87 views
0

我使用下面的代碼列出卡片中的AJAX數據。它運作良好,但如果我用setinterval與其他函數一起運行它,如果它變爲true,它會調用下面的函數來更新列出的數據。如何將appendto替換爲其他內容以更新數據

它將所有新數據附加到現有列表數據並複製它。我知道這是因爲我使用的是appendTo函數,我試圖用HTML代替它,但這並不起作用,它根本沒有列出數據。

我想再次調用此函數時更新數據,而不是追加數據。我應該使用什麼?謝謝。

function orderlist() { 
    return $.getJSON("/restaurant/order/list/100/1", 
     function(orderdata) 
      { 
      var items = []; 
      $.each(orderdata, function(key, val) { 
       var $o_on = val.ordernumber; 
       var $o_odate = val.bizorderdate; 
       var $o_userid = val.userid; 
       var $o_tnumber = val.tablenumber; 
       var $o_a = "<div class='card' id="+$o_on+">" 
          + "<div class='title'>" 
          + "Order No." + $o_on + "</div>" 
          + "Date & Time: " + $o_odate + " </br>" 
          + "User: " + $o_userid + " </br>" 
          + "Table No: " + $o_tnumber + " </br>" 
          + "</div>"; 
       items.push($o_a); 
       }) 

     $("<div/>", 
        { 
        "class": "row", 
        html: items.join("") 
     }).appendTo("#list_of_orders"); 
    }); 
} 
+0

也許只是在'.appendTo'之前使用'.empty('#list_of_orders')'? – Sebsemillia

回答

1

使用empty()清除列表,然後追加新的東西。

$('#list_of_orders').empty().append($("<div/>", 
    { 
     "class": "row", 
     "html": items.join("") 
    } 
+0

非常感謝你們,你們非常優秀。再次感謝 –

+0

不要忘記投票;) – misantronic

相關問題