- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个名为 CheckBoxActivated 的 bool 变量,我在验证用户名和密码后将其分配给 true。
string name = us.UserName;
string password = us.Password;
if (name.Equals(txtName.Text) && (password.Equals(txtPassword.Text)))
{
CheckBoxAvtivated = true;
奇怪的是,在将“true”分配给变量后,我单击另一个按钮,它立即变为“false”,这会导致不良行为。
protected void butNext_Click(object sender, EventArgs e)
{
if (CheckBoxAvtivated)
{
pnlCheckBoxes.Visible = true;
pnlUserCheckBoxValidation.Visible = false;
}
else
{
pnlCheckBoxes.Visible = false;
pnlUserCheckBoxValidation.Visible = true;
}
变量的状态因此意外地变为 false。为什么会发生这种情况?
最佳答案
asp.net 中的类级别变量(全局变量)不会在回发之间保持状态,如果要在回发之间保持状态,则必须使用 viewstate。 ASP.NET 基于 HTTP 协议(protocol),该协议(protocol)是无状态协议(protocol),不提供在请求之间存储用户数据的方法
在viewstate中设置
ViewState["CheckBoxAvtivated"] = "true";
从viewstate获取
bool CheckBoxAvtivated = bool.Parse(ViewState["CheckBoxAvtivated"].ToString());
了解在何处使用 View 状态以及在何处不应使用 View 状态非常重要。
View state's purpose in life is simple: it's there to persist stateacross postbacks. (For an ASP.NET Web page, its state is the propertyvalues of the controls that make up its control hierarchy.) This begsthe question, "What sort of state needs to be persisted?" To answerthat question, let's start by looking at what state doesn't need to bepersisted across postbacks. Recall that in the instantiation stage ofthe page life cycle, the control hierarchy is created and thoseproperties that are specified in the declarative syntax are assigned.Since these declarative properties are automatically reassigned oneach postback when the control hierarchy is constructed, there's noneed to store these property values in the view state.
来自 MSDN .
In computing, a stateless protocol is a communications protocol thattreats each request as an independent transaction that is unrelated toany previous request so that the communication consists of independentpairs of requests and responses. A stateless protocol does not requirethe server to retain session information or status about eachcommunications partner for the duration of multiple requests. Incontrast, a protocol which requires the keeping of internal state isknown as a stateful protocol.
来自 Wikipedia
关于c# - 为什么我的 bool 变量的值在回发之间丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14619476/
你能定义自动回发和回发吗?它们的区别,哪些Web服务器控件支持自动回发和回发,以及回发和回调之间的区别? 最佳答案 回发:页面向自身执行 POST 请求 autopostback:自动执行回发,例如当
我有一个 ASP.NET 表单,其中包含一个下拉列表,它会在更改时发回服务器,并用一些日期填充第二个下拉列表。 该表单还包含其他字段,其中一些字段在客户端进行验证,另一些字段在服务器端进行验证。 这是
我需要在我的 ASPX 页面中使用 JavaScript 确认函数来确认基于 C# 代码中条件的各种操作,而不是直接连接到按钮单击事件。例如。如果计算出记录数 > 200,则询问“你想继续吗?”然后根
我正在尝试为一个项目构建一个非常具体的搜索页面,但我在处理由单个页面上动态生成的控件调用的多个回发时遇到了很多麻烦。 页面必须像这样工作: 有一个复选框,“详细搜索”,会在选中/取消选中时引起回发。
在 React 组件中如何防止它回发,以便在按下提交按钮时页面不会重新加载。 组件代码如下: const class MyComponent extends React.Component { .
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: prevent postback of HtmlButton in C# 这是我的 JavaScript 函数:
我们有一个 ASP.NET MVC3 网络应用程序。我们生成 HTML5 页面。 现在,我们希望将拖放内容(图片、word文档...)发送到HTML5页面,然后发送到Web服务器在 C# 中处理(内容
我正在使用 jquery tab 并遵循 js 方法,如何以及如何修改它以在回发之间保持 tab 状态? (这会将选项卡重置为 page_load 后的第一个选项卡) $(document).read
我正在 ASP.NET 4.0 网站中使用 AjaxFileUpload。问题是,当我上传文件时,它的 UploadComplete 会触发,从而导致回发到页面。在由 AjaxFileUpload 引
我在表单上有三个单选按钮 - A、B、C。这些选择中的每一个都会使用特定于该选项的数据填充一个下拉列表。加载表单时,我将选项 A 设置为选中(默认)。 当我选择按钮 B 或 C 时,AsyncPost
我正在尝试使用 JQuery 阻止页面回发。 $(document).ready(function() { $('#').click(function() {
这个问题是一个更大页面的一部分,但我简化了代码以提供一个简单的示例来说明我正在谈论的内容。基本上我有一个带有 AutoPostBack="true"的 ASP 下拉列表,我想做一些 javascrip
我在页面上有一个 AJAX 请求。 有没有办法找到在页面上触发 AJAX 调用的时间。在 jQuery 或 javascript 中查找或发起一个函数,在页面上调用 AJAX 请求。 最佳答案 参见
我有一个按钮可以通过回发提交我的表单,我想进行一些评估,如果一切都不好显示错误消息并停止回发。我已设法让我的代码进入我的 onsubmit 函数,但无法停止回发。 表格: 功能: function
我正在混合使用 asp.net 网络表单和 asp.net-mvc。要使用我包含的网络表单 routes.IgnoreRoute("Reports/{*pathInfo}"); 在 public st
我的网页中有文本框,其中有RequiredFieldValidators。这些控件的最底部是按钮提交和清除每次我单击提交按钮时,它都会触发来自RequiredFieldValidators的验证,这很
我有一个用 jquery 做的键盘控制菜单(当我按下时,它标记第二个选项,依此类推...) 但是当我选择我需要的选项后,我想单击 Enter 来调用按钮的 OnClick 方法,就像用户真的单击了它一
我有一个表单,用于更新数据库中的一组现有信息。其中有一个选择框,当选择选项“B”时,它会显示一个隐藏部分,而在选项“A”上,它将隐藏该部分。这很好用。 但是,当我从数据库加载记录集并且选择框设置为选项
我有一个 asp.net 项目,我们称它们为对象。所有对象都在转发器中创建: '/>
我有一个 ModalPopup,它将包含一个 gridview 和 4 个用于将项目输入到 gridview 本身的字段。 是否可以在保持模式打开的同时回发到服务器并更新 gridview? 当您提交
我是一名优秀的程序员,十分优秀!