asp.net – 使用HTML’readonly =“readonly”’与JavaScript’元素的奇怪行为.re
|
一些背景 所以我在Web应用程序中完成了一些增强功能,可以自动插入数据.用户填写了一些文本框,其中的其他文本框具有自动计算的值.接收自动计算值的文本框必须是readOnly以防止用户更改,但不能禁用或不会在回发时提交.这些文本框中的每一个旁边都有一个复选框,因此用户可以有意识地检查它以使字段可写,从而允许它们覆盖插值. 浏览器:IE 7(不确定这在其他人中的行为) 问题 使用JavaScript设置文本框的readOnly属性时,文本框中的值将以以下形式提交:我可以在服务器端(ASP.NET)使用myTextBox.Text查看它,它位于Request.Form(“myTextBox”)中. 如果我在我的< asp:TextBox />上设置ReadOnly =“true”在不使用JavaScript方法的情况下,文本框中的值不能从myTextBox.Text中获取(我假设它从未进入ViewState),但它是以表格形式提交的:Request.Form(“myTextBox” “)有一个价值. 我的问题 到底他妈发生了什么?这是设计的吗?这是一个浏览器问题吗?我找到了一个bug吗?令人讨厌的是,我必须有一些额外的JavaScript,以便在页面加载时最初禁用文本框的可写性,以使我的应用程序正常工作. 谢谢! 解决方法这是设计的.作为ASP.NET安全功能,无论客户端发生什么,在服务器上将其设置为只读即可使其保持只读状态.如果您希望它们能够覆盖它并实际提交一个值,那么它在服务器上并不是真正的只读,只是在客户端上有条件地.您可以在选中复选框以更改服务器上的readonly属性时进行回发,也可以使用此ASP.NET代码仅在客户端上设置readonly属性:MyControl.Attributes.Add("readOnly","readOnly") (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 勾选复选框时,禁用一些ASP.Net验证控件
- asp.net – Visual Studio 2008 – 解决方案的条件编译符号
- 在子文件夹中运行ASP.NET网站
- 防止在ASP.NET 4.0中上传大文件
- asp.net-mvc-4 – MVC 4创建slug类型url
- asp.net-mvc-3 – insert命令需要插入数据绑定设置Kendo Gr
- asp.net – 如何验证动态创建的控件?
- 三重报价?如何在ASP.NET中分隔数据绑定的JavaScript字符串
- asp.net – JObject.Parse与JsonConvert.DeserializeObject
- asp.net – Glass Mapper打破了图像字段的标准值
- asp.net-mvc – 从ASP.NET MVC2升级到MVC3的原因
- 在IIS 8上发布asp vnext网站的问题
- asp.net – 为什么我无法访问usercontrol中的页面
- ASP.NET实现二维码
- 处理global.asax ASP.NET MVC中的异常
- asp.net-mvc-4 – 用于空响应的ASP.NET Web API和
- ASP.NET HttpApplication.EndRequest事件未被触发
- asp.net-mvc-3 – ASP.NET MVC 3和Razor的ASHX处
- asp-classic – 哪里可以存储经典ASP的连接字符串
- asp.net – MVC5(VS2012)Identity CreateIdentit
