想实现一个删除的功能,但由于这个是用StringBuilder生成Table的,想在旁边生成一个按钮来删除
有没谁遇到过用这个生成Table,但是旁边也要生成按钮来删除数据的呢

解决方案 »

  1.   

    StringBuilder sb = new StringBuilder();
            sb.Append("<table style=\"width:90%;margin:0px 4px 4px 4px; padding:4px; border-collapse: collapse;\">");
            sb.Append("<tr><td style=\"width:35%; text-align: center; font-weight: bold; border:solid 1px blue\">文件名</td>");
            sb.Append("<td style=\"width:20%; text-align: center; font-weight: bold; border:solid 1px blue\">文件大小</td>");
            sb.Append("<td style=\"width:25%; text-align: center; font-weight: bold; border:solid 1px blue\">最后修改时间</td>");
            sb.Append("<td style=\"width:20%; text-align: center; font-weight: bold; border:solid 1px blue\">操作</td></tr>");
            //针对当前目录建立目录引用对象
            DirectoryInfo dirInfo = new DirectoryInfo(path);
            FileInfo[] fls = dirInfo.GetFiles();
            int count = 0;
            foreach(FileInfo fi in fls )
            {
                count++;
      
                string FileName, FileExt;
                //文件大小
                long FileSize;
                //最后修改时间;
                DateTime FileModify;            FileName = "";
                FileExt = "";
                FileSize = 0;            ///取得文件名
                FileName = fi.Name;            ///取得文件的扩展名
                FileExt = fi.Extension;            ///取得文件的大小
                FileSize = fi.Length;            double fs = FileSize / 1024;
                if (FileSize % 1024 != 0)
                {
                    fs++;
                }
                ///取得文件的最后修改时间
                FileModify = fi.LastWriteTime;            string fileDir = "../uploaded/网络硬盘";            string xy = path.Substring(0, path.IndexOf(this.CurrentUser.Name));
                fileDir = fileDir + "/" + path.Replace(xy, "")+"/"+FileName;
                sb.Append("<tr><td style=\"border-style: none solid solid solid; border-width: 1px; border-color: blue;text-align: left; padding:4px; margin:0\"><a href='"+fileDir+"'>" + FileName + "</a></td>");            sb.Append("<td style=\"border-style: none solid solid solid; border-width: 1px; border-color: blue;text-align: right; padding:4px; margin:0\">" +fs + "KB</td>");            sb.Append("<td style=\"border-style: none solid solid solid; border-width: 1px; border-color: blue;text-align: right; padding:4px; margin:0\">" + FileModify + "</td>");            sb.Append("<td style=\"border-style: none solid solid solid; border-width: 1px; border-color: blue;text-align: right; padding:4px; margin:0\">删除</td></tr>");
            }
            
           
            if (count == 0)
            {
                sb.Append("<tr><td style=\"border-style: none solid solid solid; border-width: 1px; border-color: blue;text-align: center; padding:4px; margin:0\" colspan=\"4\"><font color='red'>该目录下没有任何文件</font></td></tr>");
            }
            sb.Append("</table>");
      

  2.   

    生成的table有ID
    JS删除
    var tbl = document.getElementById("table");
            var length = tbl.rows.length;
            //alert(length);
            // 倒序遍历,这样才能顺利删除
            for (var i = length - 1; i >= 0; i--) {            //alert(table.rows[i].children(0).children(0));
                //var chk = table.childNodes(i).children(0).all[0];
                var chk = table.rows[i].cells[0].all[0];
                //alert(chk.id);
                if (chk.id.indexOf("chk") >= 0) {
                    if (chk.checked) {
                        //alert(1);
                        //var rowIndex = table.rows[i].parentNode.parentNode.rowIndex;
                        tbl.deleteRow(i); 
                    }
                }
            }本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lanwilliam/archive/2010/09/17/5890104.aspx
      

  3.   

    <input type="button" values="删除" onclick="Del("+id+")" />
      

  4.   


    删除按钮ID用前缀+“_”+主键ID,比如:del_1;JS添加按钮的click事件不管直接提交表单。。还是用ajax提交到一般处理程序。。用split方法得到数组的第二个元素。。就是这行主键ID。执行删除方法删除成功
      

  5.   

    可以...源码下
    删除按钮的
    function removeTimeSpan(tblID)
    {
        if(tblID)
        {
            var tbl = document.getElementById(tblID);
            if(tbl)
            {
                tbl.outerHTML = "";
            }
        }
        return false;
    }添加一横按钮的function addTimeSpan(IDPrefix, NamePrefix,IDBtn)
    {
        var divPPTVideoRelation = document.getElementById(IDPrefix + "divPPTVideoRelation");
        if(!divPPTVideoRelation)
        {
            return false;
        }
        var lastNodeNum = divPPTVideoRelation.childNodes.length;
        var Nodenum = 0;
        if(lastNodeNum)
        {
            var newnodeNum = parseInt(lastNodeNum);
            Nodenum = isNaN(newnodeNum)?0:newnodeNum;
        }
            
        for(var i=1;i<=Nodenum;i++)
        {
            var tblTimeSpan = divPPTVideoRelation.childNodes[i];
            if(tblTimeSpan!=null)
            {
                if(tblTimeSpan.style.display=="none")
                {
                    tblTimeSpan.style.display="inline";
                }
            }
        }
        var btnUnFold = document.getElementById(IDBtn);
        if(btnUnFold!=null&&btnUnFold.innerText==GetJsResource("Info_Expand"))
        {
            btnUnFold.innerText=GetJsResource("Info_fold");
        }
        // 获取最大的序号
        var lastNode = divPPTVideoRelation.childNodes[divPPTVideoRelation.childNodes.length - 1];
        var num = 0;
        if(lastNode)
        {
            var lastNodeNum = lastNode.id.substr((IDPrefix + "tblTimeSpan").length, lastNode.id.length);
            var newNum = parseInt(lastNodeNum) + 1;
            num = isNaN(newNum)?0:newNum;
        }
        
        // 构造新的一行,一行用一个table表示
        var newContent = "<table id='" + IDPrefix + "tblTimeSpan" + num + "' class='maxwidth' cellpadding='1' cellspacing='0'>"
                + "<tr><td class='table-td-align-right'><span id='" + IDPrefix + "lblPageTitle" + num + "'>"+GetJsResource("Info_PageNumber_Colon")+"</span></td>"
    + "<td class='text-edit-text-align-left'><input name='" + NamePrefix + "txtPage" + num + "' type='text' id='" + IDPrefix + "txtPage" + num + "' class='table-tr-td-pagenumber-textbox-width' />"
    + "</td>"
    + "<td class='table-td-align-right'><span id='" + IDPrefix + "lblTimeSpanTitle" + num + "'>"+GetJsResource("Info_StartAndEndTime_Colon")+"</span></td>"
    + "<td class='table-tr-td-lbltimespan-align-width'><input name='" + NamePrefix + "txtTimeSpanStart" + num + "' type='text' id='" + IDPrefix + "txtTimeSpanStart" + num + "' class='table-tr-td-pagenumber-textbox-width' onblur='AutoFormatStartTime();'/>"
    + "</td>"
    //+ "<td class='table-tr-td-line-width'>~</td>"
    //+ "<td><input name='" + NamePrefix + "txtTimeSpanEnd" + num + "' type='text' id='" + IDPrefix + "txtTimeSpanEnd" + num + "' class='table-tr-td-pagenumber-textbox-width' /></td>"
    + "<td class='learnningsetadd-div-width'>";

    if(divPPTVideoRelation.childNodes.length == 0)
    {
        newContent += "&nbsp;&nbsp;&nbsp;</td>";
    }
    else
    {
        newContent += "<input type='submit' name='" + NamePrefix + "btnDeleteTimeSpan" + num + "' value='-' id='" + IDPrefix + "btnDeleteTimeSpan" + num 
                + "' class='btn' onclick='return removeTimeSpan(\"" + IDPrefix + "tblTimeSpan" + num + "\");' /></td>";
    }

    newContent += "<td id='" + IDPrefix + "tdHiddens" + num + "'><input name='" + NamePrefix + "hdnTxtPage" + num + "' type='hidden' id='" + IDPrefix + "hdnTxtPage" + num + "' value='|" + IDPrefix + "txtPage" + num + GetJsResource("Info_HiddenPageNumber")+"' />"
    + "<input name='" + NamePrefix + "hdnTxtPageCheck" + num + "' type='hidden' id='" + IDPrefix + "hdnTxtPageCheck" + num + "' value='VideoPPTPageNum|" + IDPrefix + "txtPage" + num + "||||' />"
    + "<input name='" + NamePrefix + "hdnTxtTimeSpanStart" + num + "' type='hidden' id='" + IDPrefix + "hdnTxtTimeSpanStart" + num + "' value='|" + IDPrefix + "txtTimeSpanStart" + num +GetJsResource("Info_HiddenStartTime")+ "' />"
    + "<input name='" + NamePrefix + "hdnTxtTimeSpanStartCheck" + num + "' type='hidden' id='" + IDPrefix + "hdnTxtTimeSpanStartCheck" + num + "' value='VideoPPTStartEndTime|" + IDPrefix + "txtTimeSpanStart" + num + GetJsResource("Info_HiddenStartAndEndTime")+"' />"
    //+ "<input name='" + NamePrefix + "hdnTxtTimeSpanEnd" + num + "' type='hidden' id='" + IDPrefix + "hdnTxtTimeSpanEnd" + num + "' value='|" + IDPrefix + "txtTimeSpanEnd" + num +GetJsResource("Info_HiddenEndTime") +"' />"
    //+ "<input name='" + NamePrefix + "hdnTxtTimeSpanEndCheck" + num + "' type='hidden' id='" + IDPrefix + "hdnTxtTimeSpanEndCheck" + num + "' value='VideoPPTStartEndTime|" + IDPrefix + "txtTimeSpanEnd" + num + GetJsResource("Info_HiddenStartAndEndTime")+"' />"
    //+ "<input name='" + NamePrefix + "hdnTimeStartEndChcek" + num + "' type='hidden' id='" + IDPrefix + "hdnTimeStartEndChcek" + num + "' value='custom|" + IDPrefix + "txtTimeSpanStart" + num + "," + IDPrefix + "txtTimeSpanEnd" + num + GetJsResource("Info_PPTAndVedioCorrespondenceRelation")+"' />"
    + "</td></tr></table>";
        
        divPPTVideoRelation.innerHTML = divPPTVideoRelation.innerHTML + newContent;
        return false;
    }
      

  6.   

    StringBuilder生成table
    这种做法本身就很ugly