2012-07-13 3 views
3

asp.net 웹 페이지가 있고 jquery, ajax 웹 서비스 호출 테이블로 채우고 싶습니다. 그러나 나는 그것에 강하지 않다. 테이블에 대한 HTML 부분은 다음과 같습니다jquery/json으로 테이블 채우기

<tbody id="testBody"> 
      <tr id="templateEquipment" class="hidden"> 
       <td> 
       </td> 
       <td> 
       </td> 
       <td> 
       </td> 
       <td> 
       </td> 
       <td> 
       </td> 
       <td> 
       </td> 
       <td class="hidden"> 
       </td> 
      </tr> 
     </tbody> 

는 이미 열을 정의하고 테이블은 처음에 비어 있습니다. 그리고 jquery에서

function SearchEquipment() { 
$.ajax({ 
    type: "POST", 
    url: pageName + "SearchEquipment", 
    data: "{'oParams':" + JSON.stringify(BeginSearch()) + "}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (response) { 
     if (response.d.length > 0) { 

      $.each(response.d, function (i, item) { 
      <!-- add row to fill the table--> 

당신의 도움에 감사드립니다. 나는 그것을위한 자원이 없다 (링크가 환영된다).

답변

6

이렇게 할 수 있습니다.

var html = $.map(response.d, function (item, i) { 
    return "<tr><td>" + item.value1 + "</td><td>" + item.value2 + "</td></tr>"; 
}).join(""); 

$("#testbody").append(html); 

모든 행과 셀이 포함 된 큰 문자열을 생성하면 DOM에 한 번 더 추가하면 훨씬 빨라집니다!

+0

페이지를 새로 고침하면 표를 지우고 방법을 취소해야합니까? –

+0

@Love 무슨 뜻인지 모르겠다. 페이지를 새로 고치면 모든 것이 사라지고 원하는 경우 다시 채워야합니다. $ ("# testbody")를 수행하여 테이블을 지울 수 있습니다. empty(); –