如何用jquery将table中的一个tr插入另一个tr下面呢

fy880517 2011-12-05 05:48:08
如标题,有人做过吗????


...全文
1821 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
fy880517 2011-12-05
  • 打赏
  • 举报
回复
嗯嗯,我刚试过了,其实直接用after就可以了,用Insertafter好像不行,没效果,谢谢大伙了,结贴咯
hookee 2011-12-05
  • 打赏
  • 举报
回复
只要是td都可以的,试试看就知道了
fy880517 2011-12-05
  • 打赏
  • 举报
回复
12楼好像只能针对一个需要修改的条件吧,如果我需要修改的是多个td,那用上面那个是不是有点麻烦呢??
hookee 2011-12-05
  • 打赏
  • 举报
回复
改一下:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$("#tbl td").click(function(){
if($(this).find('input').size()!=0) return false;
var v = this.innerHTML;
$(this).html("<input value='" + v + "' onblur='this.parentNode.innerHTML=this.value'>");
});
})
</script>
<table id="tbl">
<tr><td>name</td></tr>
<tr><td>telphone</td></tr>
</table>
hookee 2011-12-05
  • 打赏
  • 举报
回复

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$("#tbl td").one("click", function(){
var v = this.innerHTML;
$(this).html("<input value='" + v + "' onblur='this.parentNode.innerHTML=this.value'>");
});
})
</script>
<table id="tbl">
<tr><td>name</td></tr>
<tr><td>telphone</td></tr>
</table>
fy880517 2011-12-05
  • 打赏
  • 举报
回复
为了显示好看些,让人感觉哪里需要修改就能在哪里修改呢
逍遥庄主 2011-12-05
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 fy880517 的回复:]

不能直接根据tr里面的Id来操作吗
[/Quote]

就是用ID操作啊 你是想说你本来用那个SHOW显示内容 当点了修改时 把他变成一个INPUT 是吧 这两个里边的VALUE已经全部是要修改的内容 了

你可以直接 就把下边的隐藏掉 把上边的那个显示出来不就得了 干什么要复制呢?
fy880517 2011-12-05
  • 打赏
  • 举报
回复
不能直接根据tr里面的Id来操作吗
fy880517 2011-12-05
  • 打赏
  • 举报
回复
或者 $("#tr1").clone().insertAfter($("#tr2")).remove();

楼上的没看懂
hookee 2011-12-05
  • 打赏
  • 举报
回复

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript">
function doit(f, t){
$("#tbl tr:nth-child(" + f + ")").insertAfter($("#tbl tr:nth-child(" + t + ")"));
}
</script>
<table id="tbl">
<tr><td>1</td></tr>
<tr><td>2</td></tr>
<tr><td>3</td></tr>
<tr><td>4</td></tr>
</table>
<input type="button" onclick="doit(1, 3);" value="click">
逍遥庄主 2011-12-05
  • 打赏
  • 举报
回复
或者 $("#tr1").clone().insertAfter($("#tr2")).remove();
zell419 2011-12-05
  • 打赏
  • 举报
回复
可以使用old.after(new)函数 。
fy880517 2011-12-05
  • 打赏
  • 举报
回复
具体是这样的,

<table>
<tr id="editPhone">
<input type="text" id="phone" style="display:none">
</tr>
<tr>name</tr>
<tr id="showPhone">telphone</tr>
</table>

现在我要修改telphone
所以我想将phone 显示在showPhone那里

不知道谁知道怎么做呢
逍遥庄主 2011-12-05
  • 打赏
  • 举报
回复
你得先能得到你所说的这两个tr 比如一个id=tr1 一个id=tr2

你可以
var $tr1 = $("#tr1");
$tr1.insertAfter($('#tr2'));

这样就在tr2后边插入了tr1 如果你还要再把tr1删除掉 那么
再加一句
$tr1.remove();
jy02409187 2011-12-05
  • 打赏
  • 举报
回复
clone()
默默不得鱼 2011-12-05
  • 打赏
  • 举报
回复
两个tr换位置?

87,899

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧