Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使javascript方法在所有情况下都能工作(在ajax调用之前和之后)_Javascript_Jquery_Ajax_Post_Http Delete - Fatal编程技术网

使javascript方法在所有情况下都能工作(在ajax调用之前和之后)

使javascript方法在所有情况下都能工作(在ajax调用之前和之后),javascript,jquery,ajax,post,http-delete,Javascript,Jquery,Ajax,Post,Http Delete,我正在开发laravel 5.5,我想在其中创建一个页面,其中只包含一个表格,显示所有附件类型的项目。与附件表具有基本的一对多关系 在这个页面上,我有一个字段,可以用一篇基本的Ajax文章创建新条目,所有内容都在一个$(document.ready())中,下面是代码: var name = $('#name').val(); $.Ajax({ url: '/accessory-type', type: 'POST', data: {name: n

我正在开发laravel 5.5,我想在其中创建一个页面,其中只包含一个表格,显示所有附件类型的项目。与附件表具有基本的一对多关系

在这个页面上,我有一个字段,可以用一篇基本的Ajax文章创建新条目,所有内容都在一个
$(document.ready()
)中,下面是代码:

var name = $('#name').val();
$.Ajax({
        url: '/accessory-type',
        type: 'POST',
        data: {name: name},
        success: function (data) {
            $.Ajax({
                url: null,
                type: 'get',
                success: function (data) {
                    var my_rows = $(data).find('table').html();
                    $('.accessory_type-table').html(my_rows);
            }
        });
    }
}); 
问题是:我想通过单击图标或类似的东西来删除一行,但是如果我将代码放在
$(document.ajaxComplete
之外,那么在Ajax调用之后,代码就不起作用了。如果我把
$(document).ajaxComplete
放在里面,没有Ajax调用代码就无法工作

代码完全相同,所以我不想重复两次

如果我为它创建了一个函数,那么问题仍然存在,我应该将我的
click()
方法放在哪里才能使它在所有情况下都工作

下面是我想调用的代码:

$(document).ajaxComplete(function () {
    $('.fa-trash').click(function () {
        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });
        $.Ajax({
            type: "DELETE",
            url: "/accessory-type/" + $(this).attr('id'),
            success: function (data) {
                $.Ajax({
                    url: null,
                    type: 'get',
                    success: function (data) {
                        var table = $(data).find('table').html();
                        $('.accessory_type-table').html(table);
                    }
                });
            }
        });
    })
})
我正在接受培训,所以任何帮助/最佳实践/建议或任何事情都是好的,不要犹豫!:)

感谢您的帮助

您好,您能否详细介绍一下“没有Ajax调用,代码就无法工作”?”s参数函数应该是在99%的情况下放置事件处理程序的位置。所有代码都在
$(document.ready
中。这里面有我的
$(文档).ajaxComplete
。但是如果我以前没有使用ajax帖子创建新条目,那么就不会处理
click()
方法。我尝试了一些console.log,但是在请求之前没有到达代码。