Javascript 为什么在通过ajax向服务器提交表单的过程中会基于数组多次调用POST请求?

Javascript 为什么在通过ajax向服务器提交表单的过程中会基于数组多次调用POST请求?,javascript,jquery,ajax,laravel,Javascript,Jquery,Ajax,Laravel,当复选框被选中时,我将id推入数组中 var items=[]; $("#selection").click(function(e) { $(":checkbox").each(function() { if(this.checked === false) { this.checked = true; items.push(this.id); } });

当复选框被选中时,我将id推入数组中

var items=[];
$("#selection").click(function(e) {
       $(":checkbox").each(function() {
            if(this.checked === false) {
                this.checked = true;
                items.push(this.id);
            }
        });
});
当我提交时,项目保存到数据库中,但在“网络监视器”上,它显示了大量的
POST
请求,这是不寻常的

$('#grid').submit(function(e){

            $.ajaxSetup({
                headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') }
            });
            e.preventDefault();

            var formdata = {
                item:items
            };
            $.ajax({
                type: "POST",
                url: "/addItem",
                data: formdata ,
                dataType:'json',
                success: function(data) {
                    swal(
                        'Great!',
                        'Item added!',
                        'success'
                    ) ;
                }
            });

        });

在提交过程中,第一个值始终为pass null,但所有数据都将按预期保存,只是根据items数组中的项数调用POST请求。我的代码有什么问题吗?

从这个代码片段中,我看不出原因。你能提供有关提交事件处理程序的更多代码吗?你可能添加了submit ev吗多次发送到您的表单?当我第一次提交时,一切正常。POST请求发生。例如,我有一个3页的分页,然后它将被调用3次以存储数据。第二次,它将传递null值并获得内部服务器错误。例如,我先添加1项,成功后再添加一项,然后将得到内部服务器错误,但该项目也将被保存。然后继续添加第三个项目,将发生2个内部服务器错误,数据也将被保存…以此类推。对不起,如果不能理解我的意思,我可以解释得更详细。或者你只是按照我的要求提供更多的代码。从你显示的内容中,没有人可以判断出是什么错误。问题的哪一部分代码你需要看一下吗?