使用javascript警告多列

时间:2016-08-11 08:05:48

标签: javascript jquery

我试图alert fields。这是我的HTML

<table width="100%" id="example1" class="table table-bordered table-striped">
    <tr>
        <td> Nip </td>
        <td> Nama Lengkap </td>
    </tr>
    <tr id='ke0'>

        <td> <input class="form-control nipnya" type="text" name="nip[]" /> </td>

        <td> <input class="form-control namanya" type="text" name="namalengkap[]" /> </td>
    </tr>
    <tr id='ke1'>

    </tr>
</table>
<div>
    <a id="add_row" class="btn btn-success pull-left">Tambah Baris Baru</a> &nbsp;&nbsp;&nbsp;
    <a id="delete_row" class="pull-left btn btn-danger">Hapus Baris</a>
</div>

我有这个jquery

$(document).ready(function() {
    $("#rmnya").change(function() {
        $('#td11').html($("#rmnya").val());
    });
    var i = 1;
    $("#add_row").click(function() {
        $('#ke' + i).html('<td><input class="form-control nipnya" type="text" name="nip[]" /> </td>' +
            '<td> <input class="form-control namanya" type="text" name="namalengkap[]" />' +
            '</td>');
        $('#example1').append('<tr id="ke' + (i + 1) + '"></tr>');
        i++;
    });
    $("#delete_row").click(function() {
        if (i > 1) {
            $("#ke" + (i - 1)).html('');
            i--;
        }
    });
});

从我的脚本中可以看出。只有一行<tr></tr>。如果它只有一排,我可以提醒它。但是当点击Tambah Baris Baru时,会出现另一行。我无法提醒它。这是我的其他javascript

 $(".nipnya").change(function(){
            $('.nipnya').each(function(i, obj) {
                alert($('.nipnya').val());
            });
     });

那么,您能否告诉我如何在动态显示的每个字段中提醒after onchange

这是我的小提琴https://jsfiddle.net/spc5884w/

抱歉我的英语不好。

1 个答案:

答案 0 :(得分:2)

目前您使用的是“直接”绑定,它只会在您的代码进行事件绑定调用时附加到页面上存在的元素。

在动态生成元素时,您需要使用https://github.com/ShawnTuatara/stackoverflow-38890600委托事件方法Event Delegation

一般语法

$('table').on('click', ".nipnya", function(){
    alert($(this).val());
});

实施例

{{1}}

.on()