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");
}
});
});
答案 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