如何使用jquery清除数组索引?

时间:2017-07-07 03:28:00

标签: javascript jquery ajax

var items=[];

items.push(data);

我使用数组来存储我的数据,然后使用ajax提交。第一次提交,它工作正常。但是当随后提交时,它将提交null值以及传递给服务器的数据。

我使用下面的方法来清除数组,但我发现以前的数据只是设置为null。例如,我第一次通过值1,成功。对于第二次提交,我清除数组并存储新值,例如我将值2推到了项目[],提交时它将提交null和2.

items.splice(0);

我该如何解决?我需要在每次提交值时重置数组。

代码:

var items=[];
$("#selection").click(function(e) {
       $(":checkbox").each(function() {
            if(this.checked === false) {
                this.checked = true;
                items.push(this.id);
            }
        });
});

$('#grid').submit(function(e){
            e.preventDefault();
            var formdata = {
                data:items
            };
            $.ajax({
                type: "POST",
                url: "/add",
                data: formdata ,
                dataType:'html',
                success: function(data) {
                    alert("added");
                }
            });
        });

2 个答案:

答案 0 :(得分:1)

您只需在ajax

之后将数组设置为空数组
 success: function(data) {
                    alert("added");
                    items=[];
                }

或者更好地在每次点击时将其清空

    $("#selection").click(function(e) {
    items=[];
    //rest of the code

答案 1 :(得分:0)

如果要重置所有阵列,直到将其留空,则可以执行以下操作:

BoardController

这样你可以重置数组

更新

使用时:

var array = [1,2,3,4,5,6];
array.length = 0;

希望它对你有所帮助。

感谢您注意@nnnnnn