Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在没有回发的情况下访问复选框的值?_C#_Asp.net_Checkbox_Postback_Radgrid - Fatal编程技术网

C# 如何在没有回发的情况下访问复选框的值?

C# 如何在没有回发的情况下访问复选框的值?,c#,asp.net,checkbox,postback,radgrid,C#,Asp.net,Checkbox,Postback,Radgrid,我有一个radgrid控制用户对应用程序的访问。有两列,一个是“名称”列,另一个是代表其当前访问权限的复选框“访问”列。复选框是从数据库填充的。我希望更改复选框以授予或拒绝我指定的用户访问权限。由于有很多用户,我希望进行多次更改,并使用提交按钮将更改写入数据库。我不想每次更改复选框后都发回,然后等待页面“闪烁”。我的问题是,在禁用回发复选框的情况下,当我单击提交时,复选框的值没有注册我所做的更改。我需要一种方法来访问复选框的当前客户端状态,或者需要一些解决方法来实现这一点 提前谢谢 如果将Aut

我有一个radgrid控制用户对应用程序的访问。有两列,一个是“名称”列,另一个是代表其当前访问权限的复选框“访问”列。复选框是从数据库填充的。我希望更改复选框以授予或拒绝我指定的用户访问权限。由于有很多用户,我希望进行多次更改,并使用提交按钮将更改写入数据库。我不想每次更改复选框后都发回,然后等待页面“闪烁”。我的问题是,在禁用回发复选框的情况下,当我单击提交时,复选框的值没有注册我所做的更改。我需要一种方法来访问复选框的当前客户端状态,或者需要一些解决方法来实现这一点


提前谢谢

如果将AutoPostBack设置为false,则将禁用回发,但它们仍应发布其当前值


对我来说,这听起来更像是复选框动态生成的问题。

不确定为什么您不能在服务器端访问复选框的值,但要回答您的问题“我需要一种方法来访问复选框的当前客户端状态或一些解决方法来完成此任务”

您可以使用服务器标记并读取客户端复选框的值


有关服务器标记的更多信息,请阅读此链接。

您可以使用javascript发送ajax请求,将更改保存到数据库,而无需重新加载页面。然后,您的更新会立即发生,并且不会出现“闪烁”现象。

感谢您的支持。事实证明,问题不在于客户端/服务器端的可见性,而在于页面生命周期。我在PageLoad方法中刷新radgrid,并在Submit方法中检查复选框的值。我没有意识到PageLoad是在提交之前执行的,因此清除了我的选择。通过从PageLoad中删除RadGrid刷新,复选框的当前值得以保留。

这无疑是一条捷径,它更快、更简单。