2012-03-05 56 views
0

我有以下代碼:創建從AJAX回覆查詢動態表

  var htmlname=''; 
      var names = result.names 
      $.each(names, function(i, name){ 

       htmlname = "<td>" + name + "</td>"; 

       $('#adminall tr:last').html(htmlname); 

       var row = document.createElement('tr'); 
       var tableCurrentPoints = document.getElementById("adminall"); // find table to append to 
       tableCurrentPoints.appendChild(row); // append row to table 


      }); 


      var htmlemail=''; 
      var emails = result.emails 
      $.each(emails, function(ii, email){ 

       htmlemail = "<td>" + email + "</td>"; 

       $('#adminall tr:last').html(htmlemail); 

       var row = document.createElement('tr'); 
       var tableCurrentPoints = document.getElementById("adminall"); // find table to append to 
       tableCurrentPoints.appendChild(row); // append row to table 


      }); 

然後它的附加太多的表:

 <table id="adminall" style="margin:10px 0px 0px 0px;" width="100%" border="0" cellpadding="0" cellspacing="0"> 
     <tr id="adminallheader"> 

     </tr> 
     <tr></tr> 

    </table> 

這是一個成功處理Ajax請求中。我試圖創建一個填充查詢數據的表,我猜它應該在JavaScript中創建,因爲我在這裏嘗試,但我無法讓它工作。目前它的所有數據(姓名和電子郵件)都在一列中,但需要在兩者之間進行分割。

任何想法?

回答

2

你應該這樣做

 var names = result.names 
     $.each(names, function(i, name){ 
      //get the corrsponding email 
      var email = result.emails[i]; 
      var htmlname = "<td>" + name + "</td><td>"+email"</td>"; 

      $('#adminall tr:last').append(htmlname); 

      var row = document.createElement('tr'); 
      var tableCurrentPoints = document.getElementById("adminall"); // find table to append to 
      tableCurrentPoints.appendChild(row); // append row to table 


     }); 

和循環只有一次,而不是兩次。

+0

因爲他使用jQuery,我會建議替換那些document.createElement和document.getElementById調用。 – Meryovi 2012-03-05 12:28:38

+0

@Meryovi不,我離開這些,因爲他們有更少的開銷,使用jQuery函數(最終會調用這些函數) – 2012-03-05 12:33:48

+0

好的,謝謝@NicolaPeluchetti!我唯一擔心的是......我正在設計它,以便用戶在查詢中勾選他們希望接收的列的複選框。後端stuf全部完成,但上面顯示的方式依賴於用戶勾選名稱複選框。我想通過JSON傳遞一個單獨的值,這是一個用於迭代循環的mysql_num_rows值。這聽起來對你好嗎?然後循環中的IF語句來確定是否顯示列標題/值... – JamesG 2012-03-05 13:09:31