标签: html-helper

如何使用editorfor隐藏主键输入字段

您好,我正在使用 Editorfor() 制作一个小表单,将视图模型提交到控制器。Editorfor() 很好地打印模型的输入字段,但它也打印主键字段。所以我想隐藏主键字段。

@Html.EditorFor(m=>m.viewmodel)
Run Code Online (Sandbox Code Playgroud)

这是我的标记。

@Html.HiddenFor(m => m.viewmodel.Id);
@Html.EditorFor(m=>m.viewmodel)
Run Code Online (Sandbox Code Playgroud)

已经尝试过这个但不起作用。我想直接对模型进行处理,但我使用的是 EF Designer,所以我不知道从哪里开始。请给我一个建议。

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

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

在 SelectList 上使用 Html.DropDownList

我的模型类中有以下代码:-

public class PageOptions
    {
        public PageOptions()
    {
      int  size = Int32.Parse(System.Web.Configuration.WebConfigurationManager.AppSettings["TechPageSize"]);
            NameSelectionOptions = new SelectList(
            new List<SelectListItem> {
            new SelectListItem { Text=size.ToString(), Value = size.ToString()},
            new SelectListItem { Text="50", Value = "50"}, 
            new SelectListItem { Text="100", Value = "100"},
            new SelectListItem { Text="200", Value = "200"},
            new SelectListItem { Text="500", Value = "500"}
        }, "Value", "Text");

    }

    public SelectList NameSelectionOptions { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

但我如何在 Html.DropDownList 中显示 SelectList ?并将默认值设置为大小?谢谢

html-helper razor asp.net-mvc-4

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

禁用 mvc 中的复选框不会将值提交到数据库

如果禁用复选框,该值是否不会提交到数据库?我禁用了一个复选框,这样即使用户没有在表单的其余部分输入任何值,也至少会提交一个值。但是当我点击提交按钮时,数据库中没有条目。请帮忙

<table class="table-bordered">
<tr>
    <td colspan="2">
        @Html.CheckBoxFor(m => m.isUsed, new { @disabled="disabled"})
    </td>
</tr>
<tr>
    <td>
         @Html.TextBoxFor(m => m.FirstName, @Model.isUsed ? (object)new { @class = "form-control" } : new { @class = "form-control", @disabled = "disabled" })
        @Html.ValidationMessageFor(m => m.FirstName)
    </td>
</tr>
Run Code Online (Sandbox Code Playgroud)

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

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

如何使 Html.ValidationMessageFor() 呈现 DIV 而不是 SPAN?

我正在使用 ASP.NET MVC 5 并且我有一个使用以下 Html 帮助器的表单

   @Html.ValidationMessageFor(model => model.Name, "", new { @class = "text-danger" })
Run Code Online (Sandbox Code Playgroud)

当我查看浏览器中生成的渲染 Html 时,它似乎将其渲染为Span元素。这会导致验证消息与我的标签之一位于同一行。

我想知道的是如何使该@Html.ValidationMessageFor()方法呈现 Div元素而不是Span

asp.net-mvc html-helper

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

LabelFor不显示值?

我试图在我的 Razor 代码中显示一个值。我尝试过 DisplayFor 和 LabelFor。如果我使用 DisplayFor 那么我的值会显示,但我的 CSS 不会被应用。如果我使用 LabelFor 则相反,我的 CSS 已应用,但文本仅显示为“EmployeeId”。在转到 View 之前,我已确认我的 ViewModel 已为 EmployeeId 填充了值。

这是我尝试过的:

<div class="row voffset2">
    <div class="col-md-12">
        Employee ID: @Html.LabelFor(m => m.EmployeeId, new { @class = "control-label label-value" })
    </div>
</div>

<div class="row voffset2">
    <div class="col-md-12">
        Employee ID: @Html.DisplayFor(m => m.EmployeeId, new { @class = "control-label label-value" })
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc html-helper razor

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

是否有任何内置的帮助方法可以在下拉列表中显示枚举?

我有一些枚举,我需要在下拉列表中显示,并在我的管理页面中预先填充它们.

有没有内置的html助手呢?

(asp.net mvc)

asp.net-mvc html-helper

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

asp.net mvc中boolean值的Html帮助器

是否有任何html辅助方法在下拉列表中显示布尔值?

asp.net-mvc html-helper

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

在DELPHI XE中升级到HTMLHelpViewer(找不到HTMLHelpViewer.pas)

我正在从Delphi 6升级到Delphi XE.在Delphi 6中,我使用HTML帮助文件(.chm)并使用StoHtmlHelp来创建它,以便我可以调用上下文敏感的帮助,就像我们以前调用.hlp文件一样.我正在升级到Delphi XE,所以我需要使用原生HTML帮助支持.

我知道我应该将HTMLHelpViewer添加到项目的uses子句中,但是当我这样做时,我得到一个编译器警告它无法找到该文件.

无法编译使用过的单位'HTMLHelpViewer.pas'

有谁知道为什么Delphi默认没有找到这个文件?它应该内置.

delphi html-helper delphi-xe

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

HtmlHelper.xxxxxxFor重载中的HTML 5数据属性 - 对象htmlAttributes/IDictionary <string,object> htmlAttributes

@Html.TextBoxFor(
    model => model.SomeProperty,
        new { data_url = "http://www.google.com" }
)
Run Code Online (Sandbox Code Playgroud)

被渲染为

<input id="SomeProperty" data-url="http://www.google.com">
Run Code Online (Sandbox Code Playgroud)

我有一些类似于此的自定义扩展

public static MvcHtmlString TextBoxFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, object htmlAttributes, bool disabled)
{
    var htmlAttrs = new RouteValueDictionary(htmlAttributes);

    return TextBoxFor<TModel, TProperty>(htmlHelper, expression, htmlAttrs, disabled);
}

public static MvcHtmlString TextBoxFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, IDictionary<string, object> htmlAttributes, bool disabled)
{
    if (disabled)
    {
        htmlAttributes["disabled"] = true;
    }

    return htmlHelper.TextBoxFor(expression, htmlAttributes);
}
Run Code Online (Sandbox Code Playgroud)

第一过载,其中object htmlAttributes使用htmlAttributes,调用第二过载,其中htmlAttributes被转换到IDictionary<string, object> …

asp.net-mvc html-helper asp.net-mvc-3

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

在Telez的Razor web帮助器中使用html帮助器

我尝试用Telerik的控件创建一个html帮助器,但为了做到这一点,我必须在文件的顶部有这个指令:

@using Telerik.Web.Mvc.UI

问题出在html helper中,当我输入'@using'然后尝试键入'Telerik'时,visual studio告诉我,即使我已经在同一项目中的许多其他地方使用了该指令,该命名空间也不存在.

在此输入图像描述

正如您所看到的那样,Telerik命名空间会产生错误; '无法解决符号......

这是同一项目的某个EditorTemplates文件夹中的相同代码,但在这种情况下,没有错误:

在此输入图像描述

是因为除了MVC框架之外我不可能拥有控制权或者我错过了什么?

谢谢.

编辑:

在Darin的帮助下搜索后,我终于找到了问题所在.您可以查看Darin的评论答案.

另外,这是我的最终代码:

@using System.Web.Mvc
@using Telerik.Web.Mvc.UI

@helper IntegerTextBox(System.Web.Mvc.HtmlHelper html, string id, int? value, bool enable = true)
{
   @(html.Telerik().IntegerTextBox()
        .Name(id)
        .InputHtmlAttributes(new {style = "width:200px"})
        .Spinners(false)
        .EmptyMessage("")
        .MaxValue(int.MinValue)
        .MaxValue(int.MaxValue)
        .Value(value)
        .Enable(enable)
        )
}
Run Code Online (Sandbox Code Playgroud)

就像我说的那样,你不能使用@using指令到System.Web.Mvc来减少第一个参数的完全限定类型.我不知道为什么......'HtmlHelper'看起来像'html helper'或'@helper'......这个词与MVC框架中的某些内容有冲突?我不知道!?:(

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

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