asp.net-mvc – 使用disabled =“disabled”属性创建一个SelectL
发布时间:2020-12-15 18:47:03 所属栏目:asp.Net 来源:网络整理
导读:我没有看到通过HtmlHelper创建一个将会吐出以下HTML的SelectListItem的方法: option disabled="disabled"don't click this/option 唯一的物业 SelectListItem 有: new SelectListItem{ Name = "don't click this",Value = string.Empty,Selected = false}
我没有看到通过HtmlHelper创建一个将会吐出以下HTML的SelectListItem的方法:
<option disabled="disabled">don't click this</option> 唯一的物业 new SelectListItem{ Name = "don't click this",Value = string.Empty,Selected = false } 我看到的唯一选择是 >将SelectListItem子类添加到Enabled属性以获取视图的值 解决方法
这是我可以尝试在完全重新创建帮手之前。基本的想法是,你从帮助者获得的Html应该形成良好,所以应该是安全的解析。因此,您可以通过使用自己的扩展使用现有扩展来构建该想法,但添加禁用项目的功能。
这样做可能会(完全未经测试) public class CustomSelectItem : SelectListItem { public bool Enabled { get; set; } } public static class CustomHtmlHelpers { public static MvcHtmlString MyDropDownList(this HtmlHelper html,IEnumerable<CustomSelectItem> selectList) { var selectDoc = XDocument.Parse(html.DropDownList("",(IEnumerable<SelectListItem>)selectList).ToString()); var options = from XElement el in selectDoc.Element("select").Descendants() select el; foreach (var item in options) { var itemValue = item.Attribute("value"); if (!selectList.Where(x => x.Value == itemValue.Value).Single().Enabled) item.SetAttributeValue("disabled","disabled"); } // rebuild the control,resetting the options with the ones you modified selectDoc.Root.ReplaceNodes(options.ToArray()); return MvcHtmlString.Create(selectDoc.ToString()); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – Elmah vs Elmah.MVC Nuget软件包 – 哪些使用和
- 如何在ASP.net中取消事件冒泡?
- asp.net-mvc – 绑定排除Asp.net MVC不适用于LINQ实体
- asp.net-mvc – 如何使用Quartz.net 2.0安排任务?
- asp.net-web-api – 从OWIN中间件更改响应对象
- asp.net-mvc-4 – 禁止从地址栏调用操作方法
- asp.net – 如何从(object sender,ListViewItemEventArgs e
- asp.net – 图像文件正由另一个进程使用
- asp.net-mvc – 我必须做什么才能从MVC控制器重定向到Web窗
- asp.net – 在ASCX自定义控件中放置CSS规则的位置?
推荐文章
站长推荐
- asp.net – InvalidOperationException:没有数据
- asp.net-mvc – 如何在窗体发布后检查我的视图中
- asp.net-core-mvc – 在Mvc6中,WriteAsync函数在
- asp.net-mvc – 将域映射到MVC区域
- ASP.NET缓存的方法和最佳实践
- asp.net-mvc – ASP.NET MVC ModelMetaData:有没
- asp.net-mvc – 使用mvc创建博客条目的快照/缩略
- asp.net-mvc – 如何删除SimpleMembership用户?
- 框架升级后某个类型所在程序集发生转移,应用还能
- 如何在asp.net中使用JSON和JQuery从WebMethod返回
热点阅读