我可以使用AJAX一次删除一个条目。现在我可以使用复选框选择条目并同时删除它们,但这种方式在没有AJAX的情况下效果很好。现在我试图使用AJAX删除多个条目。这是我到目前为止有:使用AJAX删除多个条目
阿贾克斯:
`$(function() {
$(".checkbox_button_del").click(function() {
var id = $(this).attr("id");
var dataString = 'id='+ id ;
var parent = $(this).parents('tr:first');
var notice = '<div class="notice">'
+ '<div class="notice-body">'
+ '<img src="core/displays/notify/delete-icon.png" alt="" />'
+ '<h3>Deleted item</h3>'
+ '<p>The item has been succesfully deleted.</p>'
+ '</div>'
+ '<div class="notice-bottom">'
+ '</div>'
+ '</div>';
$ny(notice).purr(
{
usingTransparentPNG: true
}
);
$.ajax({
type: "POST",
url: "core/actions/delete_multiple.php",
data: dataString,
cache: false,
success: function()
{
parent.fadeOut('300', function() {$(this).remove();});
$("#load_tasklist").load("core/statistics/stats_brackets.php")
$("#load_tweets").load("response.php")
$("#load_mod_day_summary").load("core/displays/mod_day_summary.php")
$("#load_mod_task_selector").load("core/displays/mod_task_selector.php")
}
});
return false;
});
});`
外部删除脚本:`
include('../../core/additional/connect-db.php');
for($i=0;$i<count($_POST["chkDel"]);$i++)
{
if($_POST["chkDel"][$i] != "")
{
$strSQL = "DELETE FROM players ";
$strSQL .="WHERE id = '".$_POST["chkDel"][$i]."' ";
$objQuery = mysql_query($strSQL);
}
}
header('Location: ' . $_SERVER['HTTP_REFERER']);`
与删除按钮的结果列表:`
<form name="frmMain" id="myForm" method="post" OnSubmit="return onDelete();">
<?php
$connection = mysql_connect($server, $user, $pass) or die ("Could not connect to server ... \n" . mysql_error());
mysql_select_db($db) or die ("Could not connect to database ... \n" . mysql_error());
$result = mysql_query("SELECT * FROM players WHERE (userid = '$username' AND done = '0' AND measure = 'task' AND day = '$user_mydate') ORDER BY id DESC")
or die(mysql_error());
echo '<div id="checkbox_button_div">
<input class="checkbox_button_del" type="submit" id="buttondel" value="Delete" />
<input class="checkbox_button_done" type="submit" id="buttondone" value="Done" />
<input class="checkbox_button_done" type="submit" id="buttonfavorite" value="Favorite" />
<input class="checkbox_button_done" type="submit" id="buttonmove" value="+1 day" />
</div>';
echo '
<table id="tableOne" cellpadding="0" cellspacing="0" width="760" border="0" class="yui">
<thead>
<tr>
<th><a href="#" title="Click Header to Sort">Task</a></th>
<th><a href="#" title="Click Header to Sort">Minutes</a></th>
<th><a href="#" title="Click Header to Sort">Time</a></th>
<th><a href="#" title="Click Header to Sort">Category</a></th>
<th> <input type="checkbox" class="check" value="check all" /></th>
</tr>
</thead>
<tbody> ';
$i = 0;
while($row = mysql_fetch_array($result)) {
$i++;
include ('core/additional/params_tasks.php');
echo '
<tr class="handcursor" onmouseover="' .($mouseover). '" onmouseout="' .($mouseout). '">
<td class="editable" id="' .($id). '" width="180">' .($task). ' </td>
<td class="editable" id="' .($id). '">' .($minutes). '</td>
<td onClick="' .($onclick). '">' .($hours_start). '.' .($minutes_start). ' - ' .($hours_due2). '.' .($minutes_due2). ' </td>
<td onClick="' .($onclick). '">' .($categorie). ' </td>
<td align="center"><input type="checkbox" class="cb-element" name="chkDel[]" id="chkDel<?=$i;?>" value="' .($id). '"></td>
</tr> ';
}
// close table>
echo '</tbody>
<tfoot>
<tr style="display:none;">
<td style="border: 0px;" colspan="4">
No matching results..
</td>
</tr>
</tfoot>
</table>
';
?>
<input type="hidden" name="hdnCount" value="<?=$i;?>">
</form>`
我认为AJAX脚本也应该通过“$ i”值,但我不知道如何做到这一点。请告诉我,如果问题不清楚给你。期待您的回答!
不萤火虫给你任何错误? –
问题不清楚,问题是什么? –
你好,AJAX正在执行(并给出一个成功的消息),但没有被删除。我的问题是:我应该如何修改AJAX脚本,以便传递正确的表单信息?谢谢:) –