如何在dom改变后处理功能

时间:2015-08-29 10:08:01

标签: jquery html dom

我有很多ajax调用,其中每个人都将新的html代码插入到DOM中。在成功的ajax中我再次调用函数,因此他们可以选择使用新的DOM元素。 问题是,每次新调用时,成功函数都被调用X次 - 1,2,4 ......例如,如果我有一个函数createNewButton并单击它两次,我最终会得到3个按钮,因为第二次通过ajax会再次调用该函数。

function ajaxAddFormFeild(field_type, value, unique) {
    $.ajax({
        beforeSend: function (request)
        {
            request.setRequestHeader("X-CSRF-TOKEN", $('meta[name="csrf-token"]').attr('content'));
        },
        type: "GET",
        url: base_url + 'Form/' + field_type + '?value=' + value + '&unique=' + unique,
        success: function (response) {
            if (unique) {
                $('.input-options[data-unique="' + unique + '"').first().after(response);
            } else {
                $('.form_content').append(response);
                addNewOption();
                changeFormFieldPosition();
            }
            removeFormGroup();
            removeFormField();
        },
        dataType: 'html'
    });
}

构建服务器端生成的表单构建器。 什么是完美的实现?! 你没有给出答案就点击了弊...

1 个答案:

答案 0 :(得分:0)

您应该使用jQuery方法<div class="anim-container small" onclick="this.classList.toggle('morphed')"> <img src="https://maxcdn.icons8.com/windows10/PNG/32/Arrows/left_arrow-32.png" class="icons arr"> <img src="https://maxcdn.icons8.com/Android_L/PNG/24/Very_Basic/search-24.png" class="icons search"> </div> <div style="opacity:.7;"> These two icons are from <a href="https://icons8.com" target="_blank">Icons8</a> </div>取消绑定重复调用ajaxCall函数的元素上的事件。