各位高手达人帮忙解决一个asp.net问题(很急)
我现在碰到了一个很棘手的问题 大家帮忙看下首先 我在GridView 中 写了一个方法 进行数据绑定
然后 在itemtemplate 里放了一个 LinkButton
<asp:LinkButton style="COLOR: #ff0033" id="LinkButton5" runat="server" ForeColor="Red" Visible='<%# Eval("Shield").ToString()=="1" ? true : false%>'
这里是说明 如果查询出来的数据 等于1的话 这个 Visible 就等于true 不然的话就等于false
然后再这个事件里面
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Shield")
{
DbHelper db = new DbHelper();
string sql = "UPDATE [Message] SET [Shield] = 0 WHERE [Id] =" +e.CommandArgument.ToString();
DbCommand cm = db.GetSqlStringCommond(sql);
db.ExecuteNonQuery(cm);
DateBing();
}
}
代表 只要点击的话就把数据库那个列设置成为0 也就是让LinkButton 不显示出来
操作完了之后我对数据进行了从新绑定 ,
可是 现在奇怪的问题发生了。点击那个LinkButton 第一次 页面貌似刷新了一下 可是 没反应 LinkButton 没有消失 还是在原来的地方 然后 在次点击 第二下 也就是再点一次的时候 页面也刷新了一下 这次 LinkButton 就消失了 也就是说 第一下不起反应 第二下 才有反应 不知道为什么 然后 我进行调试 调试的话 没有任何问题 可是 一旦不调试正常运行的话 第一下是不起反应的 要第二下 其实我看了 点第一下的时候 数据库发生了改变 可是页面却不发生改变
请问谁能帮我解决下 谢谢大家 --------------------编程问答-------------------- 这都发到非技术区来了? --------------------编程问答-------------------- --------------------编程问答-------------------- 难道是第一次刷新的时候 直接判断是否visible了 你要是想靠数据库的改变 再触发这个link的visible的话 你得写函数操作吧 用AJAX吧
补充:.NET技术 , 非技术区