使用javascript从动态表单中删除表中的行

时间:2012-12-27 03:45:41

标签: javascript jquery html dynamic-forms

我想从使用动态表单创建的表中删除任何行,因此当单击“添加”按钮时,可以自动增加表的行。我想从表中删除任何行。当行数只有一个时删除行,键不会出现,但是当行数大于1时,它会出现任何行的删除按钮。我已经制作了html和javascript。

            <table class="table table-striped area-table tabel-form-makanan">
                <thead>
                    <tr>
                        <th>Nama Makanan</th>
                        <th>Jenis Makanan</th>
                        <th>Harga Makanan</th>                            
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>
                            <input type="text" name="nama-makanan[]" style="height: 30px; width: 300px;" class="nama-makanan" placeholder="ketikkan nama makanan"/>
                            <input type="hidden" name="id-makanan[]" class="id-makanan"/>
                        </td>
                        <td>
                            <input type="text" readonly name="nama-jenis-makanan[]" style="height: 30px; width: 300px;" class="nama-jenis-makanan" placeholder="nama jenis makanan"/>
                        </td>
                        <td>
                            <input type="text" readonly name="harga-makanan[]" style="height: 30px; width: 300px;" class="harga-makanan" placeholder="harga satuan makanan"/>
                        </td>
                    </tr>
                </tbody>
            </table>
            <button class="btn tombol-reset-makanan" style="float: right;">Reset</button>
            <button class="btn btn-primary tombol-tambah-makanan" type="button" style="float: right; margin-right: 10px;">Tambah</button>

和这个javascript(jquery)

    $('.tombol-tambah-makanan').on('click', function(){
        var tr = '<tr>\n\
                    <td><input type="text" name="nama-makanan[]" style="height: 30px; width: 300px;" class="nama-makanan" placeholder="ketikkan nama makanan"/><input type="hidden" name="id-makanan[]" class="id-makanan"/></td>\n\
                    <td><input type="text" readonly name="nama-jenis-makanan[]" style="height: 30px; width: 300px;" class="nama-jenis-makanan" placeholder="nama jenis makanan"/></td>\n\
                    <td><input type="text" readonly name="harga-makanan[]" style="height: 30px; width: 300px;" class="harga-makanan" placeholder="harga satuan makanan"/></td>\n\
                </tr>';
        $("table.tabel-form-makanan tbody").append(tr);                  
    });

    $('.tombol-reset-makanan').on('click', function(){
        $('table.tabel-form-makanan tbody tr:not(:first)').remove();
    });

如何使用动态表单删除表格的任何行?

3 个答案:

答案 0 :(得分:1)

使用on()委托动态添加元素的点击处理程序

$('.tabel-form-makanan').on( 'click', '.deleteButtonClass', function(){

   $(this).closest('tr').remove()
})

答案 1 :(得分:-1)

尝试

  $(document).on('click','.deleteButtonClass', function(){
        $('table.tabel-form-makanan tbody tr:not(:first)').remove();
    });

答案 2 :(得分:-1)

这将允许您删除任何行

http://jsfiddle.net/KRacz/

$("table.tabel-form-makanan tbody").find("button").on('click', function() {
      $(this).parent().parent().remove();
});