JS问题! 大家来看看!分部不够再加

wosizy 2009-10-30 05:00:16
<asp:CheckBox ID="chk_Income_Flg" Width="40px" runat="server" onclick="chk_ReadOnly(this)" .../>


js方法:
function chk_ReadOnly(obj) {
//行号,列号
var rowIndex, c
o = obj
while (o.tagName != "TD")
o = o.parentNode
if (o.tagName != "TD") return
c = o.cellIndex
while (o.tagName != "TR")
o = o.parentNode
if (o.tagName != "TR") return
rowIndex = o.rowIndex


var Control_chk_Tmp, Control_txt_Tmp;
var doc;
var control_grv;
doc = document.getElementById("<%=grv_CustomerIncomeTbl.ClientID%>");

//取Checkbox
if (doc.rows[rowIndex].cells[6] != undefined) {
if (doc.rows[rowIndex].cells[6].all[1].type == "checkbox") {
//获取控件
control_grv = doc.rows[rowIndex].cells[6].all[1].id;
Control_chk_Tmp = document.getElementById(control_grv);
if (Control_chk_Tmp == null) {
return;
}
}
} else { return; }

//取TextBox
if (doc.rows[rowIndex].cells[7] != undefined) {
if (doc.rows[rowIndex].cells[7].all[0].type == "text") {
//获取控件
control_grv = doc.rows[rowIndex].cells[7].all[0].id;
Control_txt_Tmp = document.getElementById(control_grv);
if (Control_txt_Tmp == null) {
return;
}
}
} else { return; }

//点击的是中转标记
if (c == 6) {
if (Control_chk_Tmp.checked == true) {
Control_txt_Tmp.value ="";
Control_txt_Tmp.disabled = false;
} else {
Control_txt_Tmp.value ="";
Control_txt_Tmp.disabled = true;
}
}


}

必须在CheckBox 的onclick事件里调用· 现在有一问题·

页面首次进来时 他不执行 我要让它执行 改咋办?
...全文
82 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wosizy 2009-10-30
  • 打赏
  • 举报
回复
回7楼 CheckBox已经加了个onclick 难道又加一个onload?
要么就是把onclick 去了 加onload <--这种不行 试了的 报找不到对象
mbh0210 2009-10-30
  • 打赏
  • 举报
回复
获取所有为checkbox类型的控件,根据控件的ID进行判断,然后在执行你的方法,主要是控件ID的问题
netniule 2009-10-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 netniule 的回复:]
onload="chk_ReadOnly(this)"
[/Quote]
我说的是给CheckBox加呀,你onclick怎么加的就一样再加个onload就是
mbh0210 2009-10-30
  • 打赏
  • 举报
回复

var chkother = document.getElementsByTagName('input');
for (var i = 0; i < chkother.length; i++) {
if (chkother[i].type == 'checkbox') {
if (chkother[i].id.indexOf('控件ID') > -1) {
chk_ReadOnly(chkother[i]);
}
}
}
wosizy 2009-10-30
  • 打赏
  • 举报
回复
上面的方法都不对啊 报错 缺少对象!
因为这是在gridview里面的CheckBox

//行号,列号
var rowIndex, c
o = obj
while (o.tagName != "TD")
o = o.parentNode
if (o.tagName != "TD") return
c = o.cellIndex
while (o.tagName != "TR")
o = o.parentNode
if (o.tagName != "TR") return
rowIndex = o.rowIndex

这些都是获取行号 什么的 所哟楼上的方法会报 缺少对象
应该必须在gridview的CheckBox 的onclick事件里用这方法
zhong2006 2009-10-30
  • 打赏
  • 举报
回复
<body onload="chk_ReadOnly(document.getElementById('chk_Income_Flg'));">
mbh0210 2009-10-30
  • 打赏
  • 举报
回复
直接执行就行了
chk_ReadOnly( document.getElementById("chk_Income_Flg"));
ivws_19 2009-10-30
  • 打赏
  • 举报
回复
window.onload=function(){
var check=document.getElementById("chk_Income_Flg");
chk_ReadOnly(check);

}
netniule 2009-10-30
  • 打赏
  • 举报
回复
onload="chk_ReadOnly(this)"

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧