首页 新闻 会员 周边 捐助

JQuery 循环给table的最后一列赋值

0
悬赏园豆:5 [已关闭问题] 关闭于 2016-12-02 14:03

JS中有这样一个数组var arry2 = ["湖北", "上海", "北京"];将数组中的元素循环添加到列表中,添加之前的列表如:

添加之后的列表为:

这个有什么好的办法没??

gyangjing的主页 gyangjing | 初学一级 | 园豆:4
提问于:2016-10-11 22:53
< >
分享
所有回答(4)
0

给地址一列的单元格添加一个标识,比如将class设为'address',然后遍历table,找到class为address的单元格,将数组的元素依次取出添加到里面。可以使用数组的shift方法。

逐影 | 园豆:982 (小虾三级) | 2016-10-11 23:38

我用for循环arry2数组,然后给最后一列赋值,但是每一列的值都是数组的最后一个元素,这是为什么呢?

支持(0) 反对(0) gyangjing | 园豆:4 (初学一级) | 2016-10-11 23:52

@gyangjing: 那肯定是你的代码写错了。而且你的需求不明确,如果有人的地址重复怎么办?没有对应关系吗?

支持(0) 反对(0) 逐影 | 园豆:982 (小虾三级) | 2016-10-12 01:18

@逐影: 暂时不管是否有重复,只要得到这样的结果就行

支持(0) 反对(0) gyangjing | 园豆:4 (初学一级) | 2016-10-12 09:52
0

这玩意儿看起来没那么难,难道不是循环一下就行了?

顾晓北 | 园豆:10893 (专家六级) | 2016-10-12 09:34

你可以动手试下就知道了

支持(0) 反对(0) gyangjing | 园豆:4 (初学一级) | 2016-10-12 09:51

@gyangjing: 动手试了一下,确实很简单,已经做出来了。

支持(0) 反对(0) 顾晓北 | 园豆:10893 (专家六级) | 2016-10-12 10:16

@顾晓北: 这样的效果我也做出来了,但是,如果姓名和地址这两列都是动态加载的,比如姓名这一列是在数组arry1= ["张三", "李四", "王五"]中,地址一列在var arry2 = ["湖北", "上海", "北京"],当我点击添加的时候,把这两个数组中的元素添加到table中,如图:

每点击一次添加,就添加一次,这又该如何实现?

支持(0) 反对(0) gyangjing | 园豆:4 (初学一级) | 2016-10-12 10:41

@gyangjing: 自己想办法

支持(0) 反对(0) 顾晓北 | 园豆:10893 (专家六级) | 2016-10-12 10:53
0

直接上代码:

$("table tr").each(function(i,e){
  $(e).find("td:last").append(arry2[i]);
});

本人没有测试过,思路是这样的。你可以试试看效果。仅供参考。

张云山 | 园豆:642 (小虾三级) | 2016-10-12 09:42

append改成text。写错了。你是改文本

支持(0) 反对(0) 张云山 | 园豆:642 (小虾三级) | 2016-10-12 09:43
0

var arry1=["湖北","上海","北京"]

var arry2 = ["湖北", "上海", "北京"]

var tb = $("#MyTB tr").eq(-1);
var trHTML;
for (var i = 0; i < arry1.length; i++) {
trHTML += "<tr><td>" + arry1[i] + "</td><td>" + arry2 [i]+ "</td></tr>";
}
tb.after(trHTML);

gyangjing | 园豆:4 (初学一级) | 2016-10-21 15:24

var arry2=["张三","李四","王五"]

支持(0) 反对(0) gyangjing | 园豆:4 (初学一级) | 2016-10-21 15:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册