我有一个html页面,其中包含一个表,一些行,并在我的任何一行复选框。 当我选择一个复选框时,我将删除消息,但只有当我点击一个红色的按钮的死亡。如何通过ajax发送动态生成的变量,使用post方法
例
表
TR(UNIQUE_ID)
TD [复选框]
TD内容
TD等内容
[...等等]
/表
[红色按钮的死亡]现在
,删除多行的必须是没有重装所以我设置了一个像这样工作的ajax函数:
- setup ajax object。
- 设置打开的方法(post/get,url,true)...
- 等待“url”页面的响应....拿一杯咖啡,休息一下。
- 得到了回应,使用jquery使用行的唯一ID删除行。
- jQuery的:弹出只是做
- jQuery的动作反馈:更新页面
所以,我开始试着删除单个记录,诸事精细周围的一些柜台,我创建了一个链接在调用函数的每一行上删除通过项目标识的“单个记录”。
但现在我已经开发了多删除的厄运。 我认为的第一件事是“我可以用'表格'封住表格,并用'后'方法发送所有内容。 这似乎是辉煌和容易....
但无效: - |
周围的Googling我找到了一些例子,似乎暗示设置包含该项目送......所以,试图按照这种方式,我需要一个方法来获得名称/ ID /值的变量(这是不重要,我可以使用正确的ID填充属性)选定的复选框。
这里,使Ajax调用和所有其余
function deleteSelected() {
var params = null;
var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("post", "./cv_delete_pm.php?mode=multi", true); //cancella i messaggi e ritorna l'id delle righe da cancellare
//Send the proper header information along with the request
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.setRequestHeader("Content-length", params.length);
http.setRequestHeader("Connection", "close");
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status != 404) {
var local = eval("(" + xmlhttp.responseText + ")");
/*
//cancella gli elementi specificati dalla response
var Node = document.getElementById(local.id);
Node.parentNode.removeChild(Node);
loadMessagesCount('{CUR_FOLDER_NAME}'); //aggiorna sidebar e totale messaggi nel body
initTabelleTestate(); //ricrea lo sfondo delle righe
$("#msgsDeleted").attr("style", "left: 600px; top: 425px; display: block;");
$("#msgsDeleted").fadeIn(500);
$("#msgsDeleted").fadeOut(2000);
$("#msgsDeleted").hide(0);
*/
}
}
};
xmlhttp.send(params);
}
其实变量“PARAM”功能设置为null,只是因为我在做一些试验。
所以,问题
是:
- 是否有可能使一个Ajax请求发送表单的内容?怎么样?
- 是否有可能得到所有选中的html页面的复选框的名称/值/ id(其中之一)?怎么样?
回答了与解决这两个问题,一个是足以赢得我的个人崇拜:)
感谢您的答案:) 去检查和研究解决方案...即将更新:) – theCrius 2010-07-02 14:41:41