Событие jQuery не будет стрелять после ajax вызов

Это - довольно странная проблема с jQuery. Я загружаю отделение

<div id="container">

на загрузке страницы. Каждая запись является табличными данными с 'удалением' ajax функция, связанная с ним. Когда загрузки страницы и нажатие на 'удалить' ссылку, ajax отзывают огни очень хорошо. Однако, после того как событие запущено, данные возвращаются из вызова ajax, и отделение заполняется с данными (но страница не обновляет или перезагружает), Когда я нажму на ссылку снова, ajax сценарий не будет стрелять. Вот мой код:

$(document).ready(function() {
    $("button.done").button({
    }).click(function() {
        var BatchID = $("input#BatchID").val();
        var Amount = $("input#Amount").val();
        var Name = $("input#CheckName").val();
        var Check_Number = $("input#Check_Number").val();
        var Company = $("select#Company").val();
        var Department = $("select#Department").val();
        $.ajax({
            type: 'GET',
            url: '/app/usagCheckEntryWS.html',
            data: {
                "BatchID" : BatchID,
                "Amount" : Amount,
                "Name" : Name,
                "Check_Number" : Check_Number,
                "Company" : Company,
                "Department" : Department
            },
            success: function (data) {
                    var ang = '';
                    var obj = $.parseJSON(data);
                    $.each(obj, function() {
                       ang += '<table><tr><td width="45">' + this["RefID"] + '</td><td width="140">' + this["Name"] + '</td><td width="95">' + this["CheckNumber"] + '</td><td align="right" width="70">$' + this["Amount"] + '</td><td width="220" style="padding-left: 15px;">' + this["Description"] + '</td><td><div class="delete" rel="' + this["RefID"] + '"><span>Delete</span></div></td></tr></table>';
                    });
                    $('#container').html(ang);
                    $("input#Amount").val('');
                    $("input#CheckName").val('');
                    $("input#Check_Number").val('');
                    $("select#Company").val('MMS');
                    $("th#dept").hide();
                    $('input#CheckName').focus();
            }
        });
    });
});

60
задан 10 April 2017 в 18:59

1 ответ

Мой комментарий является слишком длинным, извините.

Просто вопрос и комментарий, хотя я вижу, что это - старое сообщение. У меня было большое использование проблемы: $ (документ) .on ('щелчок', '#xxx", функция (e) {}); присоединить обработчики к содержанию возвратило Ajax использования, по сравнению с использованием функции () {$ ('#xxx) .on ('щелчок', функция (e) {});} и вызов, что после того, как вызов Ajax возвращается с успехом. Есть ли своего рода прием или инструкция для использования того метода? Я вовлек делегацию, и я попытался использовать это, но она не часто работает. Я мог попытаться делегировать к элементу включения. Возможно, это не пузырится до документа или тела по некоторым причинам?

0
ответ дан 1 November 2019 в 09:39

Другие вопросы по тегам:

Похожие вопросы: