用Javascript怎么获取 checkbox 所选中的行的 其他列的 值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Javascript怎么获取 checkbox 所选中的行的 其他列的 值相关的知识,希望对你有一定的参考价值。
例如
<tr>
<td>abc</td><td>abc</td><td><input type='checkbox' value='显示'></td><td><input type='checkbox' value='执行'></td><td><input type='checkbox' value='更新'></td>
<tr>
<td>bcd</td><td>bcd</td><td><input type='checkbox'></td><td><input type='checkbox'></td><td><input type='checkbox'></td>
</tr>
就是判断 例如 这两行中 当我随便选择 一行中的 三个复选框的其中一个 那么我就把 这一行的数据到数据库更新 当我多行都有选择的话(不管选择几个复选框) 那么这些行 都要动, 那么我选择第一行 abc这一行 把显示 和更新 选上 它的值应该是
1为真 0为假 ,1就是有这个权限
abc abc 1 0 1 应该是这样的
那么多行都有更新的话也就是
abc abc 1 0 1
bcd bcd 1 1 1
该怎么做 ...
var rows = document.getElementById("table").rows;
for(var i=0;i<rows.length;i++)
if(rows[i].cells[2].firstChild.checked||rows[i].cells[3].firstChild.checked||rows[i].cells[4].firstChild.checked)
var str = rows[i].cells[0].innerhtml+" "+rows[i].cells[1].innerHTML;
if(rows[i].cells[2].firstChild.checked)
str += " "+1;
else
str += " "+0;
if(rows[i].cells[3].firstChild.checked)
str += " "+1;
else
str += " "+0;
if(rows[i].cells[4].firstChild.checked)
str += " "+1;
else
str += " "+0;
alert(str);//打印出如:abc abc 1 0 1之类的语句,如果那行一个都没有选则不打印
参考技术A 我想你要用到后台吧,那么就不能仅仅停留在前端了。
建议你给每一行的checkbox加一个name属性,比如
<input type='checkbox' value='显示' value='0' name='ckb' class='cls'>
<input type='checkbox' value='执行' value='0' name='ckb' class='cls'>
<input type='checkbox' value='更新' value='0' name='ckb' class='cls'>
值默认为0,在前台,当你选中某一个时,将其值改为1,js代码,需要用jquery
$(function()
$(".cls").click(function()
this.value=1;
)
)
然后在后台用 Request.Form["ckb"]来接受checkbox的值,
就受到的值就例如这样 1 ,0 ,1 参考技术B 只要有一个checkbox被选中,就需要提交该行?
jquery:
var submitParas = $('tr:has(:checked)').map(function() with($('td',this))return [eq(0).text(),eq(1).text(),eq(2).find(':checkbox').attr('checked')?1:0,eq(3).find(':checkbox').attr('checked')?1:0,eq(4).find(':checkbox').attr('checked')?1:0];).get();
submitParas的结果就是
[
['abc','abc',1,0,1],
['bcd','bcd',1,1,1]
]
如果你是想alert出来,那么就
alert(submitParas.join('\n',function(rowParas)return rowParas.join(' ');));
结果就是
abc abc 1 0 1
bcd bcd 1 1 1 参考技术C var tmp = $(this);
rete = tmp.parent().prev();
获取当前元素的父级元素的前一个元素。
仅供参考,根据自己的实际情况去写。
以上是关于用Javascript怎么获取 checkbox 所选中的行的 其他列的 值的主要内容,如果未能解决你的问题,请参考以下文章