JQuery怎么获取动态table的某行某列的值
$("#title").html(html);for(vari=1;i<json2.length;i++){varitem=json2[i];shtml+='<trnam...
$("#title").html(html);
for ( var i = 1; i < json2.length; i++) {
var item = json2[i];
shtml += '<tr name="result" id="tr['+i+']">';
shtml += '<td id="td1" height="25" align="left" valign="middle"> '
+ item.EFFECTIVE_DATE + '</td>';
shtml += '<td id="td2" height="25" align="left" valign="middle"> '
+ item.PARA_DESC + '</td>';
shtml += '<td id="td3" height="25" align="left" valign="middle"> '
+ item.DMS_ID + '</td>';
shtml += '<td id="td4" height="25" align="left" valign="middle"> '
+ item.CAR_NUMBER + '</td>';
shtml += '<td id="td5" height="25" align="left" valign="middle"> '
+ item.GPS_ID + '</td>';
shtml += '<td id="td5" height="25" align="left" valign="middle"> '
+ item.DSRCODE + '</td>';
shtml += '<td id="td6" height="25" align="left" valign="middle" > '
+ item.MILEAGE + '</td>';
shtml += '<td id="td7" height="25" align="left" valign="middle"><a href="#" onclick="" > '
+item.PJPTARGET_TOWNCOUNT_DAY+'</a></td>';
shtml += '<td id="td8" height="25" align="left" valign="middle"><a href="#" onclick="" > '
+ item.PJPACTUAL_TOWNCOUNT_DAY + '</a></td>';
shtml += '<td id="td9" height="25" align="left" valign="middle" > '
+ item.ACTTOWNNUM + '</td>';
shtml += '<td id="td10" height="25" align="left" valign="middle"> '
+ item.TOWNPJP_PERCENT + '</td>';
shtml += '<td id="td11" height="25" align="left" valign="middle"> '
+ item.FARDISTANCE_BYDT + '</td>';
shtml += '<td id="td12" height="25" align="left" valign="middle"> '
+ item.TOWNNAME + '</td>';
shtml += '<td height="25" align="left" valign="middle"><input type="button" onclick=Visittrack('+(i-1)+') value="拜访轨迹" > </td>';
shtml += '</tr>';
}
$("#report").append(shtml);
当我点击‘拜访轨迹’是获取当前行的某一列的值 这个该怎么实现 急用 求指点 展开
for ( var i = 1; i < json2.length; i++) {
var item = json2[i];
shtml += '<tr name="result" id="tr['+i+']">';
shtml += '<td id="td1" height="25" align="left" valign="middle"> '
+ item.EFFECTIVE_DATE + '</td>';
shtml += '<td id="td2" height="25" align="left" valign="middle"> '
+ item.PARA_DESC + '</td>';
shtml += '<td id="td3" height="25" align="left" valign="middle"> '
+ item.DMS_ID + '</td>';
shtml += '<td id="td4" height="25" align="left" valign="middle"> '
+ item.CAR_NUMBER + '</td>';
shtml += '<td id="td5" height="25" align="left" valign="middle"> '
+ item.GPS_ID + '</td>';
shtml += '<td id="td5" height="25" align="left" valign="middle"> '
+ item.DSRCODE + '</td>';
shtml += '<td id="td6" height="25" align="left" valign="middle" > '
+ item.MILEAGE + '</td>';
shtml += '<td id="td7" height="25" align="left" valign="middle"><a href="#" onclick="" > '
+item.PJPTARGET_TOWNCOUNT_DAY+'</a></td>';
shtml += '<td id="td8" height="25" align="left" valign="middle"><a href="#" onclick="" > '
+ item.PJPACTUAL_TOWNCOUNT_DAY + '</a></td>';
shtml += '<td id="td9" height="25" align="left" valign="middle" > '
+ item.ACTTOWNNUM + '</td>';
shtml += '<td id="td10" height="25" align="left" valign="middle"> '
+ item.TOWNPJP_PERCENT + '</td>';
shtml += '<td id="td11" height="25" align="left" valign="middle"> '
+ item.FARDISTANCE_BYDT + '</td>';
shtml += '<td id="td12" height="25" align="left" valign="middle"> '
+ item.TOWNNAME + '</td>';
shtml += '<td height="25" align="left" valign="middle"><input type="button" onclick=Visittrack('+(i-1)+') value="拜访轨迹" > </td>';
shtml += '</tr>';
}
$("#report").append(shtml);
当我点击‘拜访轨迹’是获取当前行的某一列的值 这个该怎么实现 急用 求指点 展开
4个回答
展开全部
嗯… 根据LZ的代码,不太理解输出效果,
不过我修改了部份源码试了一个方法,LZ 你就看看呗
var shtml = '';
for (var i = 1; i < 3; i++) {
var item = 'testing';
shtml += '<tr name="result" id="tr[' + i + ']">';
shtml += '<td id="td1" height="25" align="left" valign="middle"> ' + item.EFFECTIVE_DATE + '</td>';
shtml += '<td id="td7" height="25" align="left" valign="middle"><a href="#" onclick="" > ' + item.PJPTARGET_TOWNCOUNT_DAY + '</a></td>';
shtml += '<td id="td8" height="25" align="left" valign="middle"><a href="#" onclick="" > ' + item.PJPACTUAL_TOWNCOUNT_DAY + '</a></td>';
shtml += '<td id="td9" height="25" align="left" valign="middle" > ' + item.ACTTOWNNUM + '</td>';
shtml += '<td id="td10" height="25" align="left" valign="middle"> ' + item.TOWNPJP_PERCENT + '</td>';
shtml += '<td id="td11" height="25" align="left" valign="middle"> ' + item.FARDISTANCE_BYDT + '</td>';
shtml += '<td id="td12" height="25" align="left" valign="middle"> ' + item.TOWNNAME + '</td>';
shtml += '<td height="25" align="left" valign="middle"><input type="button" class="visittrack" value="拜访轨迹" > </td>';
shtml += '</tr>';
}
$("#report").append(shtml);
$('input.visittrack').click(function() {
var $thisTR = $(this).parents('tr');
var thisTR_ID = $thisTR.attr('id');
$thisTR.css({
background: '#0cc'
});
var td10_val = $thisTR.find('#td10').text();
alert(thisTR_ID);
});
不过我修改了部份源码试了一个方法,LZ 你就看看呗
var shtml = '';
for (var i = 1; i < 3; i++) {
var item = 'testing';
shtml += '<tr name="result" id="tr[' + i + ']">';
shtml += '<td id="td1" height="25" align="left" valign="middle"> ' + item.EFFECTIVE_DATE + '</td>';
shtml += '<td id="td7" height="25" align="left" valign="middle"><a href="#" onclick="" > ' + item.PJPTARGET_TOWNCOUNT_DAY + '</a></td>';
shtml += '<td id="td8" height="25" align="left" valign="middle"><a href="#" onclick="" > ' + item.PJPACTUAL_TOWNCOUNT_DAY + '</a></td>';
shtml += '<td id="td9" height="25" align="left" valign="middle" > ' + item.ACTTOWNNUM + '</td>';
shtml += '<td id="td10" height="25" align="left" valign="middle"> ' + item.TOWNPJP_PERCENT + '</td>';
shtml += '<td id="td11" height="25" align="left" valign="middle"> ' + item.FARDISTANCE_BYDT + '</td>';
shtml += '<td id="td12" height="25" align="left" valign="middle"> ' + item.TOWNNAME + '</td>';
shtml += '<td height="25" align="left" valign="middle"><input type="button" class="visittrack" value="拜访轨迹" > </td>';
shtml += '</tr>';
}
$("#report").append(shtml);
$('input.visittrack').click(function() {
var $thisTR = $(this).parents('tr');
var thisTR_ID = $thisTR.attr('id');
$thisTR.css({
background: '#0cc'
});
var td10_val = $thisTR.find('#td10').text();
alert(thisTR_ID);
});
追问
效果如图 注意是动态table哦。。
追答
动态如何影响了?TD 的 id 不一样是吗?LZ 有没有试过我写的测试代码?你把内容修改修改应该可以用
是否动态只是在 for 的设置改成你需要的 JSON 而已
把 INPUT 改用 Class 取代 onClick,还有下面 JS click() 才是重点
还有一个更优化的方法是使用 JQuery 的 delegate (也就是 1.7.2 的 .on)
$('table').delegate('input.visittrack', 'click', function() {
var btn = $(this);
var thisTR = btn.parents('tr');
var thisTR_id = thisTR.attr('id');
$('#'+thisTR_id).find('td').each(function(i){
var thisTD = $(this);
var thisTD_id = thisTD.attr('id');
var thisTD_data = thisTD.text();
alert(thisTD_data);
// 应该会出现很多值
});
});
还有不明白的地方吗?:)
展开全部
希望对你有帮助。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>
<script type="text/javascript">
$(function(){
$(".button").bind("click",function(){
alert($(this).closest("tr").find("td").eq(0).text());
});
});
</script>
</head>
<body>
<table>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td>6</td>
<td><input type="button" class="button" value="拜访轨迹" /></td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
<td>10</td>
<td>11</td>
<td>12</td>
<td><input type="button" class="button" value="拜访轨迹" /></td>
</tr>
</table>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>
<script type="text/javascript">
$(function(){
$(".button").bind("click",function(){
alert($(this).closest("tr").find("td").eq(0).text());
});
});
</script>
</head>
<body>
<table>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td>6</td>
<td><input type="button" class="button" value="拜访轨迹" /></td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
<td>10</td>
<td>11</td>
<td>12</td>
<td><input type="button" class="button" value="拜访轨迹" /></td>
</tr>
</table>
</body>
</html>
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$(function(){
var obj = $("tr");
$.each(obj,function(k,v) {
//k+1 如果你要获取第5列
if(k+1 == 5) {
var aa = $(this);//这样就好了
}
})
});
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$("#report tr input").click(function(){
alert($(this).parent("tr").eq(0).text());
});
jquery.fn.eq(index) index 单元格序号 从0开始
alert($(this).parent("tr").eq(0).text());
});
jquery.fn.eq(index) index 单元格序号 从0开始
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询