asp.net – 使用HTML’readonly =“readonly”’与JavaScript’
一些背景
所以我在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 MVC连接到MySQL数据库
- asp.net-mvc – ASP.NET MVC应用程序性能分析
- asp.net-mvc – MVC不引人注目的范围验证动态值
- asp.net – 实体框架 – 映射不映射存储过程?
- asp.net-core – Microsoft.AspNet.Identity vnext中的User
- asp.net – 使用Jquery访问hiddenfield
- asp.net-mvc – 模拟DataServiceQuery
- asp.net-mvc – 应用程序服务层作为静态类
- asp经典 – 如何获得经典ASP中的当前域?
- asp.net-mvc – ASP.NET MVC / IIS 7.5:500内部服务器仅针
- asp.net-mvc – 如何通过Resharper 8.2.1停止INC
- cors – 如何解决WebAPI OData Owin Ninject的处
- asp.net – 为什么不删除Server和X-Powered-By标
- asp.net-mvc – MVC @ Html.Display()
- ASP.NET MVC CAPTCHA实现
- asp.net-mvc – 如何从Action属性返回一个Json对
- asp.net – 是否可以根据用户角色隐藏/显示Kendo
- [你必须知道的.NET] 第七回:品味类型---从通用类
- asp.net – 添加GridTemplateColumn会破坏RadGri
- 谈谈ASP.NET Core中的ResponseCaching