标签: html-helper

是否可以创建自定义ASP.NET MVC强类型HTML帮助程序?

我想知道是否可以在ASP.NET MVC 2中创建自定义强类型HTML Helper?创建一个常规(读取非强类型)帮助器很简单,但我很难创建强类型版本.例如,我想创建一个DatePickerFor html帮助器...

任何指导或片段将不胜感激,谢谢你提前!J.P

.net c# asp.net asp.net-mvc html-helper

16
推荐指数
1
解决办法
4521
查看次数

html helper采用字典<string,object>,如何使用这个参数?

如果html帮助器将idictionary作为参数,我该如何使用它?

我试过了:

<%= Html.Blah( new { id = "blah" }) %>
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

c# asp.net asp.net-mvc html-helper

16
推荐指数
2
解决办法
1万
查看次数

使用@ Html.EditorForModel的限制

我正在开发一个asp.net mvc-5 Web应用程序.我有以下模特课: -

public class Details4
    {
        [HiddenInput(DisplayValue=false)]
        public string RESOURCENAME { set; get; }
        [Display (Name="Account Name")]
        [Required]
        public string ACCOUNTNAME { set; get; }
        [Display(Name = "Resource type")]
        [Required]
        public string RESOURCETYPE { set; get; }
        [DataType(DataType.Password)]
        [Required]
        public string PASSWORD { set; get; }
        [Display(Name = "Description")]
        [DataType(DataType.MultilineText)]
        public string Description { set; get; }
        [Display(Name= "URL")]
        [Url]
        public string RESOURCEURL { set; get; }
        [Display(Name="Owner Name")]
        [Required]
        public string OWNERNAME { set; get; }
        [Display(Name …
Run Code Online (Sandbox Code Playgroud)

css asp.net html-helper razor asp.net-mvc-5

16
推荐指数
1
解决办法
819
查看次数

带有html帮助器的布尔值Hidden和HiddenFor

怎么了?viewmodel变量是一个值为true的bool.

<%= Html.HiddenFor(m => m.TheBool) %>
<%= Html.Hidden("IsTimeExpanded",Model.TheBool) %>
<input type="hidden" value="<%=Model.TheBool%>" name="TheBool" id="TheBool">
Run Code Online (Sandbox Code Playgroud)

结果是:

<input id="TheBool" name="TheBool" value="False" type="hidden">
<input id="TheBool" name="TheBool" value="False" type="hidden">
<input value="True" name="TheBool" id="TheBool" type="hidden">
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?为什么助手不按预期工作?

asp.net-mvc html-helper html.hiddenfor

15
推荐指数
1
解决办法
2万
查看次数

如何将焦点设置为文本框Html.TextBoxFor - mvc 2

我正在尝试将焦点设置在以下列方式生成的文本框中:

<%=Html.TextBoxFor(model => model.Email, new { style = "width:190px;Border:0px", maxsize = 190 })%>
Run Code Online (Sandbox Code Playgroud)

我试图使用javascript,这没有多大帮助:

   <script type="text/javascript">
       var txtBox = document.getElementById("Email");
       if (txtBox != null) txtBox.focus();
    </script>
Run Code Online (Sandbox Code Playgroud)

如何将焦点设置为mvc 2中的文本框Html.TextBoxFor?

html javascript asp.net-mvc html-helper focus

15
推荐指数
2
解决办法
3万
查看次数

下载mvc3编辑表单

这可能很简单,但我似乎无法自己解决.我创建了一个简单的数据库和实体模式,看起来像这样

在此输入图像描述

我正在尝试创建一个允许我添加新订单的创建表单.我总共有3个表,所以我想要的是允许此人输入订单日期的表单,还有一个下拉列表,允许我从产品表中选择一个产品

我希望能够创建一个Add或Edit视图,允许我将OrderDate插入OrderTable,并将OrderID和选定的ProductID插入OrderProduct.

我需要在这做什么步骤.

我创建了一个OrderController并勾选了"添加操作",然后添加了一个看起来像这样的Create View

@model Test.OrderProduct

@{
    ViewBag.Title = "Create2";
}

    <h2>Create2</h2>

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>OrderProduct</legend>

        <div class="editor-label">
            @Html.LabelFor(model => model.OrderID)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.OrderID)
            @Html.ValidationMessageFor(model => model.OrderID)
        </div>

        <div class="editor-label">
            @Html.LabelFor(model => model.ProductID)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.ProductID)
            @Html.ValidationMessageFor(model => model.ProductID)
        </div>

        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>
}

<div>
    @Html.ActionLink("Back to List", "Index")
</div>
Run Code Online (Sandbox Code Playgroud)

这将创建包含OrderID和ProductID文本框的视图,但不包含日期.

我的控制器CreatePost还没有改变

  [HttpPost]
    public ActionResult Create(FormCollection collection)
    {
        try
        { …
Run Code Online (Sandbox Code Playgroud)

c# html-helper razor asp.net-mvc-3

15
推荐指数
1
解决办法
2万
查看次数

将HTML.EditorFor转换为下拉列表(html.dropdownfor?)

目前我在默认的"创建"视图页面中使用Html.EditorFor控件.

 <%: Html.EditorFor(model => model.IsActive) %> 
Run Code Online (Sandbox Code Playgroud)

我想将其转换为带有值的下拉列表,并且仍然绑定到视图中的模型.我的问题是双重的.

  1. 如果下拉列表中只需要2/3值.是否有快速方法可以明确填充2或3个值?

  2. 如果列表很大并且需要来自sql查询,该怎么做?

在此先感谢您的帮助.

asp.net-mvc html-helper editorfor drop-down-menu

15
推荐指数
1
解决办法
2万
查看次数

为与模型绑定一起使用的输入创建我自己的HtmlHelper扩展

我对当前的DropDownList实现不满意,因为我对选项标签不能做太多(仅支持选中,支持文本和值).我想在我可以设置禁用和其他个人选项的地方.

目前我正在通过javascript改变选项,但我认为这有点像一种hacky方式,我宁愿只是渲染正确的html开始.

我知道我可以创建一个使用select和option标签的模板,并根据需要制作选项 - 但是正常的DropDownList扩展添加了val的东西以及特定的名称和ID,我想在提交表单时是正确的数据绑定:

<select data-val="true" data-val-number="The field SelectedValue must be a number." id="ParentDropDown_SelectedValue" name="ParentDropDown.SelectedValue">
Run Code Online (Sandbox Code Playgroud)

如何将这些属性添加到我自己的模板中?

asp.net-mvc html-helper mvc-editor-templates

15
推荐指数
1
解决办法
7749
查看次数

无法将类型'System.Collections.Generic.List <string>'转换为'System.Web.Mvc.SelectList'

我有以下Action方法,它有一个带有字符串列表的viewBag: -

public ActionResult Login(string returnUrl)
        {
            List<string> domains = new List<string>();
    domains.Add("DomainA");

            ViewBag.ReturnUrl = returnUrl;
            ViewBag.Domains = domains;
            return View();
        }
Run Code Online (Sandbox Code Playgroud)

在视图上我试图建立一个下拉列表,显示viewBag字符串如下: -

@Html.DropDownList("domains",(SelectList)ViewBag.domains )
Run Code Online (Sandbox Code Playgroud)

但我得到以下错误: -

无法将类型'System.Collections.Generic.List'转换为'System.Web.Mvc.SelectList'

那么有人可以为什么我不能填充我的DropDown列表中的蜇伤列表?谢谢

asp.net-mvc html-helper asp.net-mvc-4

15
推荐指数
2
解决办法
4万
查看次数

如何正确编码MVC Razor中外部URL的链接

该视图假设显示一个超链接列表,每个超链接指向一个外部URL.目标是让用户单击其中一个链接并让浏览器打开包含所选URL的新选项卡.目前我有以下标记:

@Html.ActionLink("SomeSite", "http://subdomain.mydomain.com/SomeSite")
Run Code Online (Sandbox Code Playgroud)

此标记产生:

http://localhost:58980/AccessInstance/http%3a/subdomain.mydomain.com/SomeSite
Run Code Online (Sandbox Code Playgroud)

代替 :

http://subdomain.mydomain.com/SomeSite
Run Code Online (Sandbox Code Playgroud)

我可以在标记中更改哪些内容以使其按预期工作?

asp.net-mvc html-helper razor

15
推荐指数
2
解决办法
4万
查看次数