jquery获取checkbox所在行所有列数据并放入数组

jquery获取checkbox所在行所有列数据并放入数组,第1张

可以使用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 某一行的数据、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9542928.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存