
可以使用parent,parents,find等函数获取当前行的所有数据。
先用parent或parents找到当前行的行元素,然后在当前行循环查找列元素。最后,把找到的元素值放入数组就可以了。
代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ";我这里引用的是183的JQ,别的版本你试试看可以不~还有就是我用的是d出~你可以自己再改成写到BODY上的~反正参数都有了~你自己调用就行了~
<table>
<tr><td>行1列1</td><td>行1列2</td><td>行1列3</td></tr>
<tr><td>行2列1</td><td>行2列2</td><td>行2列3</td></tr>
</table>
来个点击的
$("table tr")click(function()
{
var $this = $(this);
//$this就是这个行,你点哪行,哪行就有反应。
})
有几种方式可以实现你的预期:
1 直接返回当前tr下面所有的td,然后取你想要的具体的列。
var tds = $(this)parent("tr")find("td");
这个tds是个集合,分别调用 tdseq(0) tdseq(1) 就是你要的具体的列。
2 既然你这个列数是不固定的,应该是动态语言生成的对吧,
可以在生成的时候给你想要处理的td加个id,例如 id="row1_1", id="row1_2", id="row2_1"之类的。
然后用jQ这样取:var tds = $("td[id^='row'+i),这里的i就是你要的行,
可以通过点击button时获取(因为button上你也会在生成的时候加属性)。
如果想直接拿到具体td,还可以 var td = $("row"+i+j);
这里的i j也是点击button传入的。
其实方法还有很多,看个人使用习惯了。
一般都会在后台获得,比如这个表格的数据是用$list这个变量存储的,$list中每个元素都有id date title file四个字段,checkbox的name是id,现在写一个js方法用来将选中的复选框传到后台,需要使用一个按钮触发下面的方法
function fun(){
var arr = new Array();
$(":checked")each(function(){
arr[] = $(this)attr("name");
});
//然后用任意方法将arr传到后台
}
在后台根据传回来的id在$list中获得要你想要的数据。
上面是我觉得最简单的方法。
下面还有一个在页面里获得你要的数据的方法
将每一行数据都写在同一个div里,根据复选框的标示获得对应div内的数据
<div name=“id”>数据, (最后一列)<input type="checkbox" name="id" /></div>
<script>
function fun(){
var arr = new Array();
var name = '';
$(":checked")each(function(){
name = $(this)attr("name");
arr[] = $("div[name=" + name + "]")html();
});
}
</script>
以上就是关于jquery获取checkbox所在行所有列数据并放入数组全部的内容,包括:jquery获取checkbox所在行所有列数据并放入数组、各位大侠我想知道怎么通过jQuery获取table的表头和最左边那一列、用jquery 得到选择table 某一行的数据、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)