how do I set disabled attribute on html textbox in asp.net-mvc?(如何在 asp.net-mvc 中的 html 文本框上设置禁用属性?)
问题描述
我正在尝试在 html 文本框上动态设置 disabled 属性并遇到问题
I am trying to dynamically set the disabled attribute on the html textbox and having issues
我认为这是我的尝试:
string disabledString = "";
if (SomeLogic)
{
disabledString = "disabled";
}
Html.Textbox()...new Dictionary<string, object> { { "maxlength", 50 }, { "disabled", readOnlyState } })%>
如您所见,我将 disabled 属性设置为 "" 或禁用,但是当我测试时,它似乎在任何一种情况下都被禁用.我错过了什么吗?
As you can see I am setting the disabled attribute to "" or disabled but when I test, it seems to be disabled in either case. Am I missing something?
推荐答案
这对我们来说很难看,因为这里的 HTML 规范很糟糕.
This was ugly for us, due to the fact that the HTML spec is lousy here.
基本上在我们的视图代码中,我们有一些这样的逻辑:
Basically in our view code we had some logic like this:
bool isPlatformOwner = false;
object disabledAttributes = new { @disabled="disabled", @readonly="readonly" };
//omitted code setting isPlatformOwner
if (isPlatformOwner)
{
disabledAttributes = new { };
}
然后,对于我们的控件,我们有这样的:
Then, for our controls, we had this:
<%=Html.CheckBoxFor(f => f.AddToReleaseIndicator, disabledAttributes)%>
匿名类型在这里拯救了我们,但是,就像我说的,它有点难看.
Anonymous types saved us here, but, like I said, it got a little ugly.
这篇关于如何在 asp.net-mvc 中的 html 文本框上设置禁用属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在 asp.net-mvc 中的 html 文本框上设置禁用属性?


- 失败的 Canvas 360 jquery 插件 2022-01-01
- Css:将嵌套元素定位在父元素边界之外一点 2022-09-07
- Quasar 2+Apollo:错误:找不到ID为默认的Apollo客户端。如果您在组件设置之外,请使用ProvideApolloClient() 2022-01-01
- 使用RSelum从网站(报纸档案)中抓取多个网页 2022-09-06
- CSS媒体查询(最大高度)不起作用,但为什么? 2022-01-01
- Fetch API 如何获取响应体? 2022-01-01
- 如何使用 JSON 格式的 jQuery AJAX 从 .cfm 页面输出查 2022-01-01
- addEventListener 在 IE 11 中不起作用 2022-01-01
- Flexslider 箭头未正确显示 2022-01-01
- 400或500级别的HTTP响应 2022-01-01