何らかの理由で、最初の行だけが削除され、その理由は不明です。他の行を削除しない
私はこの目的(あなたのループを「確認」で)$(this).parents('tr').get(0)
が行トライ選択するのであればあなただけの推測 をaRowインデックスをincorreclt選択していると思う
function templatesArray(whatsThis) {
var myNewArray = new Array();
var aRow = new Array();
$('input:checkbox[name="templates"]:checked').each(function(i) {
myNewArray.push($(this).val());
aRow.push(oTable.fnGetPosition($(this).parents('tr').get(0)));
});
var dataString = 'templatesArray=' + myNewArray + '&deleteTemplatesArray=True';
$.ajax({
type: "POST",
url: "processes/templates.php",
data: dataString,
success: function(data) {
if (data.errorsExist) {
} else {
$(whatsThis).parents("tr").eq(0).hide();
for (i in aRow) // loop over the array of row indexes
oTable.fnDeleteRow(aRow[i]);
if(oTable.fnSettings().fnRecordsTotal() == 0) {
$('.bt_red').remove();
$('.bt_blue').remove();
}
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('.bt_blue').remove();
}
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('div.pagination').remove();
}
}
}
});
}
oTableとは何ですか?マークアップはどこですか? 1つのライナーといくつかのコードよりも冗長である必要があります。 – madcapnmckay
http://jsfiddle.net/xtremer360/3Ldj5/それは、サーバー側のアクションを実行してから、テーブルから行を削除するが、配列内の最初の行のみを実行しているはずです。 –
投稿が編集されたのはなぜですか? –