我一直在尝试找出我遇到的一个相对较新的问题。我有一个基本表,允许用户将项目拖放到行中。我正在使用查询循环遍历每一行,如果要删除的项目不存在,我会调用
$.post( "submitassignment.php", {type: assignment[0], id : assignment[1], name: username[1], order: order} );
根据具体情况,这条线路将被调用 10 到 100 次。在大约第 60 次之后(并不总是相同),我开始在我的网络面板中看到 chrome Method Post - Status (failed) - Type Pending。
什么可能导致此问题?
当用户将项目放入表中时调用的完整函数是:
function removeAll( item, name ) {
console.log('remove all');
assignment = item.attr('id').split('id');
var all = $('.container:visible')
all.each(function(){ //remove all only removes visible users
var fullId = $(this).attr('id').split('id');
var uId = fullId[1];
console.log(uId);
var removedItem = $(this).find('#' + assignment[0] + 'id' + assignment[1] + 'id' + uId);
if(removedItem.length){
removedItem.closest('div').removeClass('full');
removedItem.closest('div').addClass('open');
removedItem.fadeOut();
$.post( "removeall.php", {type: assignment[0], id: assignment[1], userId: uId} );
}
});
}
removeall.php 文件的代码是
<?php session_start();
include('../includes/teacherstartup.php');
$type = $_POST['type'];
$id = $_POST['id'];
$studentId = $_POST['userId'];
deleteAssignment($studentId, $userGradeLevel, $userSubject, $type, $id);
?>