一个GridView中,前面有CheckBox,然后选中某一个CheckBox后,点击按钮,改变这一行中某一列的值,比如说
一个GridView中,前面有CheckBox,然后选中某一个CheckBox后,点击按钮,改变这一行中某一列的值,比如说,把一列中的值由0变成1,当值变成1后,这一行的...
一个GridView中,前面有CheckBox,然后选中某一个CheckBox后,点击按钮,改变这一行中某一列的值,比如说,把一列中的值由0变成1,当值变成1后,这一行的CheckBox要变成不可选中,怎么写?我GridView中某一列的值,是直接用模板绑定的,比如<ItemTemplate><%#PassOrNo(Eval( "WebCheckked").ToString())%></ItemTemplate>
我知道要在Gridview的RowDataBound事件中写判断,问题是,这个判断怎么写呢?求救~ 展开
我知道要在Gridview的RowDataBound事件中写判断,问题是,这个判断怎么写呢?求救~ 展开
6个回答
展开全部
<script type="text/javascript">
function fRistchild(objxx)
{
var obj1=objxx.firstChild;
while(obj1.nodeType!=1){
obj1=obj1.nextSibling;
if(!obj1)
return null;
}
return obj1;
}
var tb=document.getElementById("table");
var rows=tb.rows;
alert(fRistchild(rows[1].cells[6]).innerHTML);
for(var i=1; i<rows.length; i++)
{
var cells=rows[i].cells;
if(fRistchild(cells[6]).innerHTML=="已通过")
fRistchild(cells[0]).disabled="disabled"
}
</script>
我想在后台做不成功的问题就是你不允许在page_load里加载事件。每次按钮都刷新页面,保持不住状态。
所以唯一办法就是js解决 ,这个代码的function fRistchild(objxx)部分是为了兼容firefox
function fRistchild(objxx)
{
var obj1=objxx.firstChild;
while(obj1.nodeType!=1){
obj1=obj1.nextSibling;
if(!obj1)
return null;
}
return obj1;
}
var tb=document.getElementById("table");
var rows=tb.rows;
alert(fRistchild(rows[1].cells[6]).innerHTML);
for(var i=1; i<rows.length; i++)
{
var cells=rows[i].cells;
if(fRistchild(cells[6]).innerHTML=="已通过")
fRistchild(cells[0]).disabled="disabled"
}
</script>
我想在后台做不成功的问题就是你不允许在page_load里加载事件。每次按钮都刷新页面,保持不住状态。
所以唯一办法就是js解决 ,这个代码的function fRistchild(objxx)部分是为了兼容firefox
展开全部
用到checkbox的话首先确定是否真的打了√
如果确定已经打了√但还是删不掉要可能的问题有二:
1.删除代码不正确(这个仔细的查可疑解决的)
2.因为.NET里的服务器按钮会引发回传,所以我们在onload里的时间,如果不判断ispostback的话,可能导致多次被调用,而且总是在你的 按钮事件触发前执行,所以可能是每次点击都先刷新了gridview的当前状态,本来选中的也被取消了。
如果确定已经打了√但还是删不掉要可能的问题有二:
1.删除代码不正确(这个仔细的查可疑解决的)
2.因为.NET里的服务器按钮会引发回传,所以我们在onload里的时间,如果不判断ispostback的话,可能导致多次被调用,而且总是在你的 按钮事件触发前执行,所以可能是每次点击都先刷新了gridview的当前状态,本来选中的也被取消了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
提交数据库后,重新绑定一下Gridview不久好了……CheckBox也写成模板,check属性用类似<%#PassOrNo(Eval( "WebCheckked").ToString())%>的函数绑定一下,函数返回值是布尔型的
追问
能加下我QQ嘛?429480209,谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.把复选框作为模板列,这样在RowDataBound事件时,可以控制这个复选框
2.PassOrNo这列用控件来显示,方便控制
RowDataBound(,)
{
if(是数据行){
//值=找到PassorNo当前值,方法很多的,如e.Row.FindControl(“控件ID”);
//复选框=找到当前行的checkbox,
if(值==1)
{
复选框.Enabled=false;
//复选框.checked=true;
}
}
}
2.PassOrNo这列用控件来显示,方便控制
RowDataBound(,)
{
if(是数据行){
//值=找到PassorNo当前值,方法很多的,如e.Row.FindControl(“控件ID”);
//复选框=找到当前行的checkbox,
if(值==1)
{
复选框.Enabled=false;
//复选框.checked=true;
}
}
}
追问
在的话,加下我QQ429480209
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
放一个LinkButton来实现,在用事件点击的次数的奇偶来更新那列的数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你去CSDN上看看清清月儿的博客上有很多
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询