Javascript / JQuery .click()只有一次

时间:2017-10-25 10:24:18

标签: javascript jquery click

我创建了写入表格的输入字段。现在我正在编辑编辑功能。您可以进行编辑,但如果您同时在更多字段上按编辑则不起作用。

问题始于$('#btnSave').click(function() {

希望你理解我的问题

var edit = function () {
    $('#edit-entry-' + z).click(function () {
        var rowid = ($(this).attr('data-rowid'));

        alert('Edit: ' + rowid);
        $('#btnSave').show();
        $('#btnOk').hide();

        $('#id').val($(this).parents("tr").children('td:eq(0)').text());
        $('#firstn').val($(this).parents("tr").children('td:eq(1)').text());
        $('#lastn').val($(this).parents("tr").children('td:eq(2)').text());
        $('#phonenum').val($(this).parents("tr").children('td:eq(3)').text());
        $('#emailadd').val($(this).parents("tr").children('td:eq(4)').text());
        $('#bday').val($(this).parents("tr").children('td:eq(5)').text());
        $('#street').val($(this).parents("tr").children('td:eq(6)').text());
        $('#num').val($(this).parents("tr").children('td:eq(7)').text());
        $('#plz').val($(this).parents("tr").children('td:eq(8)').text());
        $('#place').val($(this).parents("tr").children('td:eq(9)').text());
        $('#comment').val($(this).parents("tr").children('td:eq(11)').text());

        if ($(this).parents('tr').children('td:eq(10)').text() == 'Telefon') {
            $('#contactphone').prop('checked', true);
        } else if ($(this).parents('tr').children('td:eq(10)').text() == 'Post') {
            $('#contactmail').prop('checked', true);
        } else if ($(this).parents('tr').children('td:eq(10)').text() == 'E-Mail') {
            $('#contactemail').prop('checked', true);
        }

        $('#btnSave').click(function () {
            alert('Speichern: ' + rowid);
            $('#firstn' + rowid).html($('#firstn').val());
            $('#lastn' + rowid).html($('#lastn').val());
            $('#phonenum' + rowid).html($('#phonenum').val());
            $('#emailadd' + rowid).html($('#emailadd').val());
            $('#bday' + rowid).html($('#bday').val());
            $('#street' + rowid).html($('#street').val());
            $('#num' + rowid).html($('#num').val());
            $('#plz' + rowid).html($('#plz').val());
            $('#place' + rowid).html($('#place').val());
            $('#comment' + rowid).html($('#comment').val());

            $('#btnOk').show();
            $('#btnSave').hide();
            $('#btnReset').click();
        });
    });
}

1 个答案:

答案 0 :(得分:0)

使用 attr (属性为禁用按钮)和取消绑定(析构函数关闭事件点击以确定)



$('document').ready(function(){

  $('.btnSave').click(function() {
     console.log("clicked " + $(this).attr('value'));
     $(this).attr('disabled', true).unbind('click');
  });

});

.btnSave{
  width:100%;
}
table tr td{
   border:solid 1px green;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<table>
<tr>
<td><input class="btnSave" type="submit" value="save1"/></td><td>first line cell2</td></tr>

<tr>
<td><input class="btnSave" type="submit" value="save2"/></td><td>second line cell2</td></tr>

<tr>
<td><input class="btnSave" type="submit" value="save3"/></td><td>third line cell2</td></tr>
</table>
&#13;
&#13;
&#13;