一个table有多行,怎样确定被选中的是第几行,然后遍历未被选中的行,获取其中的某个td

一个table有多行,怎样确定被选中的是第几行,然后遍历未被选中的行,获取其中的某个td,第1张

$("tr :checkbox:checked")each(function(i,dom){

var tr = $(dom)closest("tr");

consolelog(tr);

});

$("tr :checkbox:not(:checked)")each(function(i,dom){

var tr = $(dom)closest("tr");

var tds = trfind("td");

consolelog(tds);

});

jQuery 遍历的 eq() 方法将匹配元素集缩减值指定 index 上的一个,index表示元素的位置(最小为 0)。所以获取Table第 i 行第 j 列的内容可用如下代码

1

$("table")find("tr")eq(i-1)find("td")eq(j-1)text(); // 注意-1是因为index从0开始计数

实例演示

创建Html元素

<div class="box">

<span>填写行列数,点击按钮后获取对应位置的数值:</span>

<div class="content">

<table>

<tr><td>1</td><td>2</td><td>3</td></tr>

<tr><td>4</td><td>5</td><td>6</td></tr>

<tr><td>7</td><td>8</td><td>9</td></tr>

</table>

</div>

第<input type="text" name="row">行,第<input type="text" name="col">列<input type="button" class="btn" value="确定">

</div>

添加css样式

divbox{width:300px;height:250px;padding:10px 20px;border:4px dashed #ccc;}

divbox>span{color:#999;font-style:italic;}

divcontent{width:250px;height:100px;margin:10px 0;padding:5px 20px;border:2px solid #ff6666;}

input[type='text']{width:35px;height:30px;border:1px solid #99ccff;}

input[type='button']{width:100px;height:30px;margin:10px;border:2px solid #ebbcbe;}

selected{background:#99ccff;}

table{border-collapse:collapse;}

td{padding:5px 10px;border:1px solid green;}

编写jquery代码

$(function(){

$("input:button")click(function() {

row = $("input[name='row']")val() - 1;

col = $("input[name='col']")val() - 1;

val = $("table")find("tr")eq(row)find("td")eq(col)text();

alert(val);

});

})

观察显示效果

思路可能是用get_all方法得到IHTMLElementCollection,调用tags,指定名称为table,得到一个新的IHTMLElementCollection,然后遍历IHTMLElementCollection,得到IHTMLTable等类型的数据

那你可以获取tr的html啊。。

$('table tr')each(function(){

consolelog($(this)html())

})

你要绑定多条记录,用DataTable或者List绑定可以用DataList,Repeater去绑定。不用For循环去读取。相关的代码例子你自己去百度下吧。

<cc1:BaseRepeater ID="rptList" runat="server">

<HeaderTemplate>

<tr class="list-head">

<td width="30%"><input id="chkSelectAll" onclick="SelectAll2(this,'memberList')" type="checkbox" runat="server" />

<cc1:BaseLinkButton ID="LastName" runat="server" Text="Name" CommandName='<%#DisplayFieldNameMemberName %>'></cc1:BaseLinkButton>

</td>

<td width="15%">

Employee #

</td>

<td width="15%">

Position

</td>

<td width="15%">

Email

</td>

<td width="15%">

Work Phone

</td>

<td with="5" align="center">

Status

</td>

<td width="5%" id="tdaction" runat="server" align="center" >Action</td>

</tr>

</HeaderTemplate>

<ItemTemplate>

<tr id="row" runat="server" class="list-body light">

<td><asp:CheckBox ID="chkId" runat="server" />

<asp:LinkButton ID="aView" runat="server" CommandName="view" CommandArgument='<%#"MemberID="+ Eval("MemberID")%>'><%#EMSCommonUtilityGetFullName(Eval("LastName")ToString(),Eval("FirstName")ToString())%></asp:LinkButton>

<asp:HiddenField ID="hddStamp" runat="server" Value='<%# Eval("StampContent")%>' />

<asp:HiddenField ID="hddId" runat="server" Value='<%# Eval("MemberID")%>' />

<asp:HiddenField ID="hddStampContent" runat="server" Value='<%# Eval("StampContent")%>' />

</td>

<td>

<%#Eval("WorkCode")%>

</td>

<td>

<%#Eval("Position")%>

</td>

<td>

<%#Eval("Email")%>

</td>

<td>

<%#Eval("WorkPhone")%>

</td>

<td align="center">

<%# Eval("ActiveStatus")%>

</td>

<td align="center" id="tdedit" runat="server">

<asp:LinkButton ID="linkBtnEdit" runat="server" CommandName="edit" CommandArgument='<%#"MemberID="+ Eval("MemberID")%>' Text="Edit" ></asp:LinkButton>

</td>

</tr>

</ItemTemplate>

</cc1:BaseRepeater>

DataSource只要继承可遍历接口就行。

Action中这样:

ViewBagData = (DataTable对象)

视图中:

@{

DataTable dt = (DataTable)ViewBagData;

for(var i=0;i<dtRowsCount;i++){

//写代码。

}

}

1、JS获取表格的简便方法:获取tbody:tBodies 获取thead:tHead 获取tfoot:tFoot 获取行tr:rows 获取列td:cells

使用实例: oTabletBodies[0] oTabletHead[0] oTabletFoot[0] oTablerows[1] oTablecells[1]

2、遍历

var oTable=documentgetElementById("表格id");

oTabletBodies[0]可以看成是rows和cells组成的二维数组,用两个for循环嵌套遍历一下就可以了

以上就是关于一个table有多行,怎样确定被选中的是第几行,然后遍历未被选中的行,获取其中的某个td全部的内容,包括:一个table有多行,怎样确定被选中的是第几行,然后遍历未被选中的行,获取其中的某个td、jquery怎么获取table中某一行的值、怎么通过IHTMLDocument2提取网页中的Table表格数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存