<html>
    <head>
        <title>传送一个对象</title>
    </head>
    <style type="text/css">
<!--
.tablecss{
    border-collapse: collapse;
    border: 1px solid #fedccc;
    font-size: 14px;
    table-layout:fixed;
}
.tablecss td {
    text-align: left;
    height: 25px;
    border-right-style: solid;
    border-right-width: 1px;
    border-color: gray;
}
.tablecss.th {
    background-color: #3a95c2;
    color: white;
    font-family: Verdana;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    border-right-style: solid;
    word-break:keep-all;
    border-right-width: 1px;
    top: expression(offsetParent.scrollTop); 
    position: relative; 
}
.edit{
cursor:hand;
}
.text {
    width: 100%;
    border:1px solid BLUE;
    background: white;
}
.label{
    width: 100%;
    border:0px;
    background: papayawhip;
}
.fixedCell{
background:#f8fcf0;
}
.fixedCell1{
background:#99FF99;
}
.resizeCell{
    position:relative;
    background-color:gray;
    width:1;
    z-index:1;
    left:expression(this.parentElement.offsetWidth-2);
    cursor:e-resize;
}
-->
</style>
    <script language="javascript">
<!--
var rows=1;//总行数//设置行的样式
function rowCss(o,a){
    var t=document.getElementById(o).getElementsByTagName("tr");
    rows=t.length-1;
    for(var i=1;i<=rows;i++){
        t[i].style.backgroundColor=a;
    }
}
//删除用户
function deleteUser(){
        if(rows==1){
            alert('只有一行不可以删除');
            return;
        }
        var rowIndex=event.srcElement.parentNode.parentNode.rowIndex;
        var typetable=document.getElementById('rowcss');
        typetable.deleteRow(rowIndex);
        rows--;
}//添加用户
function addUser(){
    var rowIndex=event.srcElement.parentNode.parentNode.rowIndex;
    var typetable=document.getElementById("rowcss");
    var trT = typetable.insertRow(rowIndex+1);
    if((rowIndex+1)%2==0)trT.style.backgroundColor='#99FF99';
    if((rowIndex+1)%2!=0)trT.style.backgroundColor='papayawhip';
    for(var i=0;i<4;i++){
        var cell=document.createElement("td");
        if(i==0){
            cell.setAttribute("className","fixedCell");
            cell.setAttribute("class","fixedCell");
            cell.innerText=rows+1;
            
        }
        else if(i<=3){
            
            var input=document.createElement("input");
            input.setAttribute("type","text");
            if(i==1){input.setAttribute("name","users["+rows+"].name");
        input.onkeydown =function(){if(event.keyCode==13)event.keyCode='9';}
         }
            if(i==2){input.setAttribute("name","users["+rows+"].age");
                     input.onkeydown =function(){if(event.keyCode==13)event.keyCode='9';
                     }
       input.setAttribute("readonly","readonly");
                    }
            if(i==3){input.setAttribute("name","users["+rows+"].address");
                     input.onkeydown =function(){if(event.keyCode==13)rowinsert();}
                    }
            input.setAttribute("class",'label');
            input.setAttribute("className",'label');//IE
            cell.appendChild(input);
        }
        trT.appendChild(cell);
    }
    document.getElementById("rowcss").rows[rowIndex+1].cells[1].children[0].focus();
    rows++;
}//为可以拖去的"|"添加事件
function setDrag(){
    for(var i=1;i<4;i++){
        var l=document.getElementById("drag"+i);
        l.onmousedown=MouseDownToResize;
        l.onmousemove=MouseMoveToResize;
        l.onmouseup=MouseUpToResize;
    }
}//实现拖动table的列
var obj;//当前拖动的对象
function MouseDownToResize(){
    obj=event.srcElement;
    obj.mouseDownX=event.clientX;
    obj.pareneTdW=obj.parentElement.offsetWidth;
    obj.pareneTableW=rowcss.offsetWidth;
    obj.setCapture();
}
function MouseMoveToResize(){
    if(!obj||!obj.mouseDownX) return false;
    var newWidth=obj.pareneTdW*1+event.clientX*1-obj.mouseDownX;
    if(newWidth>0)
    {
            obj.parentElement.style.width = newWidth;
            rowcss.style.width=obj.pareneTableW*1+event.clientX*1-obj.mouseDownX;
        }
}
function MouseUpToResize(){
    obj.releaseCapture();
    obj.mouseDownX=0;
}
function dd()
  {   
          var   k=event.keyCode;   
          if((event.ctrlKey)&&(k==68))   
          {  
                  alert("d");                  deleteUser();
          }   
    
  }
function rowinsert()
{
           var rowIndex=event.srcElement.parentNode.parentNode.rowIndex;
      
       var tablelength=document.getElementById("rowcss").rows.length;
              
           if(tablelength-1==rowIndex)addUser();
           if(tablelength-1!=rowIndex)document.getElementById("rowcss").rows[rowIndex+1].cells[1].children[0].focus();
}
-->
</script>
    <head>
        <title>類型管理</title>
    </head>
    <body onkeydown="dd()">        <form action="user.do" method="post">
          <div style="width: 100%; height: 450; overflow-x: auto; overflow-y: auto">
            <table id='rowcss' class='tablecss'     frame="below">
                <tr class="th" >
                <!-- 使用th会让拖动出错 -->
                    <td width="25" >
                       
                    </td>
                    <td>
                        <label class="resizeCell" id="drag1"></label>
                        姓名
                    </td>
                    <td>
                        <label class="resizeCell" id="drag2"></label>
                        年龄
                    </td>
                    <td>
                        <label class="resizeCell" id="drag3"></label>
                        地址
                    </td>
                    
                </tr>
                <tr>
                    <td class="fixedCell">1</td>
                    <td class="edit" >
                        <input type="text" realy name="users[0].name" onkeydown="if(event.keyCode==13)event.keyCode='9'"
                         value="" class="label"/>
                    </td>
                    <td class="edit" onkeydown="if(event.keyCode==13)event.keyCode='9'">
                        <input type="text" readonly="readonly" name="users[0].name"
                         value="" class="label"/>
                    </td>
                    <td class="edit" onkeydown="if(event.keyCode==13)rowinsert()">
                        <input type="text" name="users[0].name"
                        value="" class="label"/>
                    </td>           
                </tr>    
            </table>
  </div>
<input type="button" name="btn" value="保存">
        </form>
        <script language="javascript">
            <!--
                rowCss("rowcss","papayawhip");
                setDrag();
            -->
        </script>
    </body>
</html>小弟是初学stuts,想问问 怎么提交datagrid数据到 数据库中,提个思路,有源码和例子最好了,还有怎么从数据库中数据用 logic:present和logic:iterate把数据显示出来啊,谢谢各位了

解决方案 »

  1.   


    1 <form action="x.do?method=你的struts里的action里面的方法名字但是不包括括号" method="post"> method是你的struts-config.xml里面配置的参数 parameters="method" 配置在<action-mapping>里面
    2   request.setAttribute("list",list);
    <logic:present name="list">//当前请求是否存在名字叫做list的集合 
     
     <logic:Iterater name="list" Collection="${requestScope.list}">//迭代标签
      ${list.封装数据的javaBean的参数名字}
    </logic:iterater>
    </logic:present>
      

  2.   

    用脚本取出数据,转换成你所要的数据格式,数据格式你任意选择(如xml格式),放入一个隐藏表单中,送入服务器进行处理。