2013-09-25 41 views
7

Đây là logic: Tôi nhập thứ gì đó để tạo thành và biểu mẫu là tìm kiếm trực tiếp AJAX. sau khi tôi tìm thấy giá trị, tôi bấm vào nút thêm và nó tạo ra hàng mới trong bảng/tbody hiện có.AJAX: thêm hàng mới vào bảng hoặc loại bỏ bằng cách sử dụng AJAX

<table class="standard"> 
    <thead> 
     <tr> 
      <td colspan="2"> 
       Start Input barcode/Product Name 
      </td> 
      <td colspan="4"> 
       <input type="text" size="90" value="" placeholder="Barcode/Product Name"> 
      </td> 
      <td> 
       <button class="tambah"><i class="icon-plus"></i> Add</button> 
      </td> 
     </tr> 

     <tr> 
      <td> 
       No. 
      </td> 
      <td> 
       Kode Barang 
      </td> 
      <td> 
       Nama Barang 
      </td> 
      <td> 
       Qty 
      </td> 
      <td> 
       Harga 
      </td> 
      <td> 
       Disc % 
      </td> 
      <td> 
       Total 
      </td> 
     </tr> 
    </thead> 
    <tbody> 

    <!-- when button add is click that will add <tr></tr> here --> 
    </tbody> 
</table> 

tôi có thể làm điều đó không? nếu vậy, làm thế nào?

Fiddle Ví dụ: http://jsfiddle.net/anggagewor/cauPH/

+0

Bạn có thể tạo câu đố không? Câu hỏi chưa được hiểu rõ. –

+0

@GurminderSingh sory, oke lần sau tôi sẽ đăng trong fiddle cho bản demo. – Anggagewor

+0

Nhân tiện, [TẠI ĐÂY] (http://stackoverflow.com/questions/15103661/dynamically-add-and-remove-table-rows?rq=1) là câu hỏi tương tự với câu hỏi của bạn. –

Trả lời

7

Hãy thử điều này

var scntDiv = $('#p_scents'); 
var i = $('#p_scents tr').size() + 1; 

$('#addScnt').click(function() { 
    scntDiv.append('<tr><td><select name="type" id="type"><option value="Debit">Debit</option><option value="Credit">Credit</option></select></td><td><select name="accounts" id="accounts"><option value="">SELECT</option><option value="One">One</option><option value="Two">Two</option></select></td><td><input type="text" name="debit_amount" id="debit_amount"/></td><td><input type="text" name="credit_amount" id="credit_amount"/></td><td><a href="#" id="remScnt">Remove</a></td></tr>'); 
    i++; 
    return false; 
}); 

//Remove button 
$(document).on('click', '#remScnt', function() { 
    if (i > 2) { 
     $(this).closest('tr').remove(); 
     i--; 
    } 
    return false; 
});​ 

Dưới đây là một ví dụ làm việc, bao gồm loại bỏ chức năng hàng: DEMO.

+1

này, cảm ơn vì bản demo, công việc của nó ... – Anggagewor

0
$("<tr><td>.....content...<td><a class='remove'>remove</a>").appendTo("#tableid tbody").find('.remove').click(function() { 
    $(this).parent().parent().remove(); 
}); 
0

Để đối phó ajax của bạn, bạn có thể làm điều này

$("#myTable > tbody").append('<tr><td>my data</td><td>more data</td></tr>'); 

sẽ được thay bằng id bảng của bạn hoặc lớp và <td>my data</td><td>more data</td> sẽ được thay thế bằng nội dung của bạn

6

Bạn có thể tìm thấy mã giả phía dưới.

$('#button_id').on('click', function(e) { 
    $.ajax({ 
     url : yourUrl, 
     type : 'GET', 
     dataType : 'json', 
     success : function(data) { 
      $('#table_id tbody').append("<tr><td>" + data.column1 + "</td><td>" + data.column2 + "</td><td>" + data.column3 + "</td></tr>"); 
     }, 
     error : function() { 
      console.log('error'); 
     } 
    }); 
}); 
+0

điều này làm việc cho tôi, cảm ơn bạn –

Các vấn đề liên quan