把表加入到<form>中,发送的时候,在接收数据的文件中
<% ck=request.form("checkedbox")//假设checkedbox为复选框的名
   for each item in ck
   sql="delete from tablename where name='"&item&"'"
   conn.execute sql
   next
%>
信箱的删除就是这样的。

解决方案 »

  1.   

    楼上的真够简单的,如果能实现,的确是个好办法
    for each item in ck
    这个item是个什么?序号?如果是序号,这个序号跟信件的ID或NAME不见得是一回事,因为信件的ID并不一定是连续的(中间的某些可能被删除了),而且信件显示可能分页,假如得到的CHECKBOX序号是0..9,对应的信件ID可能是300..314,怎么办?
    我的方法可能复杂了一点,但性能还算可靠吧
    <html>
    <head><!--
    首先,我测试过的经验是 FORM 中的 CHECKBOX 不能重名,
    如果重名就统统无法显示
    所以只能不用 FORM 或者 CHECKBOX 用不同的名字对你的问题,CHECKBOX 根本用不着取名字(麻烦,而且根据我的测试,这种大量重复的控件,如果都取个ID或NAME将非常影响执行速度)在你的数据库中,每封信件肯定应该有个唯一的 ID 吧?否则怎么管理?
    下面的 ArrMailId 是你用 asp 生成的数组,其元素是这些信件的 ID,与表中的行一一对应
    (当然你也可以在表中用 <tr><td><input type=checkbox MailId=xx> 将信件的 ID 与 CHECKBOX 直接关联起来,但从执行速度考虑,定义单独的 Array 更快一些)
    下面的 FORM 提交了一个隐藏控件,其内容是一个由待删除信件的 ID 号组成的字符串,如“1,3,4,5,9”
    ASP 端收到这个参数后,根据逗号将字符串拆开,获得 ID 号的数组,就可以执行删除操作了
    --><script>
    var ArrMailId = new Array(1,3,4,5,9); // 用 asp 生成的数组function ChkSelect()
    {
    var s = "";
    var oElements = document.all.oForm.elements;
    // 获得所有选中的 CHECKBOX 的序号,存进 sDel
    var iCheckBox = 0;
    for ( var i = 0; i < oElements.length; i++ )
    {
    var oElement = oElements.item(i);
    // 下面的代码假设 FORM 中没有其它用途的 CHECKBOX
    if ( oElement.type == "checkbox" )
    {
    if ( oElement.checked )
    {
    var MailId = ArrMailId[iCheckBox];
    s += ("," + MailId);
    }
    iCheckBox ++; // 序号递增
    }
    }
    if ( s )
    {
    // 现在 s 是一个形如 ",1,3,4,5,9" 的字符串
    s = s.substr(1, s.length-1);
    // 现在 s 是一个形如 "1,3,4,5,9" 的字符串
    document.all.oForm.sDel.value = s;
    return confirm("确实要删除这些代号的信件:\n" + s + "\n?");
    //return true;
    }
    alert("请选择待删除的信件");
    return false;
    }
    </script></head><body><form method=post action="./delete.asp" name=oForm onsubmit="return ChkSelect();">
    <input type=hidden name=sDel value=""><table>
    <tr><td><input type=checkbox></td><td>邮件 1</td></tr>
    <tr><td><input type=checkbox></td><td>邮件 2</td></tr>
    <tr><td><input type=checkbox></td><td>邮件 3</td></tr>
    </table><input type=submit value="删除所选信件">
    </form></body>
    </html>