我在一个列表页面,点新增按钮弹出一个窗口,然后我选择这个新的窗口里面的数据,就添加到父窗口列表去,再点击保存按钮后,就保存到数据库去了,再点击新增按钮从新增窗口选择数据过来,这次选过来的数据就要靠前,也就是还没保存到数据库的数据靠最前面。父页面列表有3条数据,然后我从弹出窗口选择一条数据过来,然后父页面列表就有4条数据了,但只有原来的3条数是保存在数据库的,新的这条数据是临时的,就是在新窗口选择这条数据过来之后就要排在这3条数据之前。选中这条数据保存之后才按顺序排。

解决方案 »

  1.   

    使用jQuery
    代码如下
    $("tr:eq(0)").before("<tr><td>aaaaa</td></tr>");
      

  2.   

    $(tr).insertAfter("#table_ywx3 tr:eq(0)");
      

  3.   

    如果有多个table
    则指定id
    代码如下:
    $("#bbb tr:eq(0)").before("<tr><td>aaaaa</td></tr>");
    bbb为table的id
      

  4.   


    应该使用insertBefore,使用insertAfter只能从第二个开始了
      

  5.   

    如果使用纯js的话,先循环读取事先已经存在的节点保存到一个变量里面,然后在table上remove掉,然后加入你要增加的节点,然后再把前面保存好的节点在追加到后面,就可以保证新增的靠前,但是效率不好。
      

  6.   

    if(outaMount == "") num=0;
    var row = myTable.insertRow(); 


    var col0value="";
    var col0 = row.insertCell(0);
    col0value="<input type='checkbox' name='selectImportColumn' value='"+id+"' checked />";
    col0value+="<input type='hidden' name='id"+id+"' value='0' />";
    col0value+="<input type='hidden' name='callbacklistNo"+id+"' value='"+callbacklistNo+"' />";
    col0value+="<input type='hidden' name='unitPrice"+id+"' value='"+unitPrice+"' />";
    col0value+="<input type='hidden' name='enterNo"+id+"' value='"+enterNo+"' />";
    col0value+="<input type='hidden' name='callbackNumber"+id+"' value='"+callbackNumber+"' />";

    col0.innerHTML=col0value;

    //空TD
    var col1 = row.insertCell(1);
    var value1=document.createTextNode("");
    col1.appendChild(value1);
    这是我创建TR的部分代码,我不是用的jQuery