本人是初学者,请尽量说得详细点,先谢谢了。
jsp代码如下:<%@ page language="java" contentType="text/html; charset=gbk"
    pageEncoding="gbk"%>
    <%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title>Insert title here</title>
</head>
<body>
<s:form action="add" namespace="/example/map">
K=<s:textfield name="inputKey"/><br/>
V=<s:textfield name="inputValue"/><br/>
V=<s:textfield name="inputValue2"/><br/>
<s:submit value="添加"/>
<s:reset value="重置"/>
<table border="1">
<tr>
<td>Key</td>
<td>Value</td>
<td>Value</td>
<td>操作</td>
</tr>
<s:iterator value="datas.keySet()" var="d">
<tr>
<td><s:property value="#d"/></td>
<td><s:textfield name="datas['%{#d}']"/></td>
</s:iterator>
<td>
<s:iterator value="datas2.keySet()" var="d2">
<s:textfield name="datas2['%{#d2}']"/>
</td><td><a href="remove">删除</a></s:iterator></td></tr></table>
<s:submit value="保存" action="save"/>
<s:submit value="清除" action="clear"/>
</s:form>
</body>
</html>要求点击删除连接,就删除一条记录。谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢 

解决方案 »

  1.   

    初学者的话就别用ajax了。同步都没弄清就没必要去搞异步。<td><a href="remove">删除</a></s:iterator></td>  在你的删除链接里面传一个该条记录的id过去
    <a href="remove?id=...">删除</a>进入到servlet中执行删除操作 ,在跳转到该页面就OK。若此页面的数据时通过servlet动态查询显示的话,那就跳到该查询的servlet中。
      

  2.   


    @Action(value = "remove", results = { @Result(name =SUCCESS, location = "/WEB-INF/jsp/example/Map.jsp") })
        public String remove(){
            String key=form.getInputKey();
            String value=form.getInputValue();
            String value2=form.getInputValue2();
            HttpSession session=ServletActionContext.getRequest().getSession();
            Map<String,String>datas=(Map<String,String>)session.getAttribute("datas");
            Map<String,String>datas2=(Map<String,String>)session.getAttribute("datas2");
            datas.put(key,value);
            form.setDatas(datas);
            datas2.put(key, value2);
            form.setDatas2(datas2);
            datas.remove(key);
            datas2.remove(key);
            return SUCCESS;
        }Action中这样写有什么问题吗?
      

  3.   

    <td><a href="remove">删除</a></s:iterator></td>
    改成这样试下:   
    <td><a href="remove ?key=<s:property value='#id'/>">删除</a></s:iterator></td>
    就是传一个Map的key值进Action 在form中获取 然后通过这个key删除那条记录
      

  4.   

    /**
     *一次删除多行用户
     */
    var delUserNum=0;//记录删除用户的总数
    function delMultUser()
    {
    //获取用户数据行数
    var chkSelUsers = document.getElementsByName("chkSelUser");
    //alert(chkSelUsers.length);
    //判断是否全删了
    if(chkSelUsers.length!=0)
    {
    //获取xml根元素(回想另一种方法:提示:第7条)
    var root=xmlUsersId.documentElement;//虚拟在内存中的xml的DOM文档树
    //记录被选中的条数用
    var chkNum=0;
    //循环删除被选中的记录条
    for(var i = 0; i < chkSelUsers.length;)
    {
    //alert("循环次数:"+i);
    if (chkSelUsers[i].checked==true)
    {
    //alert("该行的用户Id: "+chkSelUsers[i].parentElement.parentElement.cells[2].innerText);
    //alert("将被删除的用户: "+root.childNodes[i].childNodes[0].text);
    //执行删除
    root.removeChild(root.childNodes[i]);
    chkNum += 1;//累加本次被删除的记录行
    delUserNum+=1;//累加总计被删除的记录条数
    i=0;//这里重新赋值循环变量很关键,因为每当删除一条记录行后,chkSelUsers.length的长度都会变化
    continue;
    }
    //没选中要删除的任何记录行提示
    if(i == chkSelUsers.length-1 && chkNum == 0)
    {
    alert("您还没有选中任何记录!");
    return false;
    }
    i++;
    }
    alert("本次被删除的用户数为:"+chkNum+"\n总计被删除的用户数为:"+delUserNum);
    }
    else
    {
    alert("用户已全部删除!");
    return false;
    }
    }
    上面是我以前写的通过一个按钮,一次删除多条选中记录的js,希望对你有所帮助!
      

  5.   

       将这个程序跑下 
      
    <script src="js/jquery-1.3.2.js" type="text/javascript"> </script> 
    <script type="text/javascript"> 
    function addit(){
        var n = $("#paramTable tr:last td").eq(1).html();
        if(isNaN(n)) n = 1;
        else n++;
        $("#paramTable").append("<tr><td>name</td><td>" + n + "</td><td onclick='delit(this);'>删除</td></tr>")
    }
    function delit(obj){
        $(obj).parent().remove();
    }
    </script>
    <input type="button" onclick="addit()" value="添加">
    <table border=1 id="paramTable"> 
    <tr> 
    <td width=100> 
    参数名称 
    </td> 
    <td width=100> 
    对应列号 
    </td> 
    <td width=60> 
    是否删除 
    </td> 
    </tr> 
    <tr> 
    <td>name</td> 
    <td>1</td> 
    <td onclick="delit(this);">删除</td> 
    </tr> 
    </table>你的需求跟它不同的是 ,Table 里面的数据时自己填充的 ,(自己做一个 ajax  请求 )
      

  6.   

      转自 : http://topic.csdn.net/u/20090910/15/ef975ad9-d462-47f1-912c-910a51ca9541.html