js怎么获取表格中指定行某一列的值

js怎么获取表格中指定行某一列的值,第1张

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

$("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);

});

})

1、遍历tr,得到鼠标所在tr的索引值,然后用二楼所说的方法判断奇偶;

2、用jQuery方便很多,在选择器后面加上":even"便选择的是索引值为偶数的元素,加":odd"便是索引值为奇数的元素。

下面是实现的代码,包括jQuery的:

<html>

<head>

<title></title>

<script type="text/javascript" src="jquery/jquery-142js"></script>

<script type="text/javascript">

function changeStyle(elementId) {

var testTable = documentgetElementById("testTable")children[0];

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

if(testTablechildren[i] == elementId) {

if(i % 2 == 1) //奇数

elementIdstylebackground = "red";

else //偶数

elementIdstylebackground = "blue";

}

}

}

//清除样式

function changeBack(elementId) {

elementIdstylebackground = "";

}

/

jQuery方法:

/

$(document)ready(function() {

$("#jqueryTable tr:even")mouseover(function() {

$(this)css("background", "red");

});

$("#jqueryTable tr:odd")mouseover(function() {

$(this)css("background", "blue");

});

$("#jqueryTable tr")mouseout(function() {

$(this)css("background", "");

});

});

</script>

</head>

<body>

<table id="testTable" border="1">

<tr onmouseover="changeStyle(this)" onmouseout="changeBack(this)">

<td>第</td><td>一行</td>

</tr>

<tr onmouseover="changeStyle(this)" onmouseout="changeBack(this)">

<td>第</td><td>二行</td>

</tr>

<tr onmouseover="changeStyle(this)" onmouseout="changeBack(this)">

<td>第</td><td>三行</td>

</tr>

<tr onmouseover="changeStyle(this)" onmouseout="changeBack(this)">

<td>第</td><td>四行</td>

</tr>

<tr onmouseover="changeStyle(this)" onmouseout="changeBack(this)">

<td>第</td><td>五行</td>

</tr>

</table>

<table id="jqueryTable" border="1">

<tr>

<td>第一行</td>

</tr>

<tr>

<td>第二行</td>

</tr>

<tr>

<td>第三行</td>

</tr>

<tr>

<td>第四行</td>

</tr>

<tr>

<td>第五行</td>

</tr>

</table>

</body>

</html>

表格的第一行为thead中的th

剩下的数据放到tbody中

最后那一行添加的放到tfoot中

对tbody下面的所有tr绑定一个点击事件

事件中获取这个tr下的所有td,就可以获取这行的数据了

大概代码如下:

var trs =documentgetElementById("tbodyId")getElementsByTagName("tr");

for(int i=0;i<=trslength;i++)

{

var tr = trs[i];

var tds=trgetElementsByTagName("td");

//下面遍历tds就可以去获取数据了

//把数据放到下面的表单就好了

//然后提交数据,在服务端进行修改

}

获取行/列

var colcount=wbWorksheets(1)UsedRangeCellsRowsCount ;

var colcolumn=wbWorksheets(1)UsedRangeColumnsCount;

读取本地Excel文件内容的Javascript代码:

<script type="text/javascript">

function read_excel(){

var filePath="D:\abcd9comxls"; //要读取的xls

var sheet_id=2; //读取第2个表

var row_start=3; //从第3行开始读取

var tempStr='';

try{

var oXL = new ActiveXObject("Excelapplication"); //创建ExcelApplication对象

}catch(err)

{

alert(err);

}

var oWB = oXLWorkbooksopen(filePath);

oWBworksheets(sheet_id)select();

var oSheet = oWBActiveSheet;

var colcount=oXLWorksheets(sheet_id)UsedRangeCellsRowsCount ;

for(var i=row_start;i<=colcount;i++){

if (typeof(oSheetCells(i,8)value)=='date'){ //处理第8列部分单元格内容是日期格式时的读取问题

d= new Date(oSheetCells(i,8)value);

temp_time=dgetFullYear()+"-"+(dgetMonth() + 1)+"-"+dgetDate();

}

else

temp_time=$trim(oSheetCells(i,7)valuetoString());

tempStr+=($trim(oSheetCells(i,2)value)+" "+$trim(oSheetCells(i,4)value)+" "+$trim(oSheetCells(i,6)valuetoString())+" "+temp_time+"\n");

//读取第2、4、6、8列内容

}

return tempStr; //返回

oXLQuit();

CollectGarbage();

}

</script>

windowonload = function(){

var trs = documentgetElementsByTagName('tr');

for(var i=0;i<trslength;i++)

{

var tds=trs[i]getElementsByTagName('td');

for(var j=0;j<tdslength;j++)

{

tds[j]onclick = function(){

alert(thisinnerHTML);

}

}

}

}

这样就可以了。不过要注意,js里面对应每一行有rowIndex这个值,但是对每个cell(就是你说的每一行里的每个列)就没有类似的东西了。

以上就是关于js怎么获取表格中指定行某一列的值全部的内容,包括:js怎么获取表格中指定行某一列的值、javascript怎样 获取表格奇数行偶数行、怎么用JavaScript获取table某行数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9728143.html

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

发表评论

登录后才能评论

评论列表(0条)

保存