Asp.net mvc 5 如何使用IDFor编辑自定义显示?

Asp.net mvc 5 如何使用IDFor编辑自定义显示?,asp.net-mvc-5,jquery-ui-dialog,html-helper,Asp.net Mvc 5,Jquery Ui Dialog,Html Helper,我已经使用以下代码创建了一个DisplayWithIdFor,它可以显示我希望显示的信息 public static class DisplayWithIDHelper { public static MvcHtmlString DisplayWithIdForApplication<TModel, TValue>(this HtmlHelper<TModel> helper, Expression<Func<TModel, TValue>>

我已经使用以下代码创建了一个DisplayWithIdFor,它可以显示我希望显示的信息

public static class DisplayWithIDHelper
{
    public static MvcHtmlString DisplayWithIdForApplication<TModel, TValue>(this HtmlHelper<TModel> helper, Expression<Func<TModel, TValue>> expression, string wrapperTag = "div")
    {
        var id = helper.ViewContext.ViewData.TemplateInfo.GetFullHtmlFieldId(ExpressionHelper.GetExpressionText(expression));
        return MvcHtmlString.Create(string.Format("<{0} style=\"color: #003F51; margin-left: 87px;\" class=\"{1}\">{2}</{0}>", wrapperTag, id, helper.DisplayFor(expression)));
    }
}
有人能解释一下如何在两个Html助手之间添加间距吗

可以提供任何附加代码,如Jquery弹出代码

多谢各位

编辑:

为了让事情更清楚一点,我必须从选中的剑道网格行中获取应用程序名称,并使用以下代码在jquery中设置名称:

$("div[class='changeStatus_application']").html(applicationName);

要简化并确保所有操作都相同,请删除:

style=“display:inline;float:left”

从第二段标记开始,在助手中使用类似于span的元素,而不是div(块级别元素)

然后,您可能需要使用IDHelper更改显示器上的左边距


还可以尝试使用类而不是样式属性。然后,您可以通过样式表更改站点的外观,而无需重新编译,并且样式是集中的;更易于维护。

显示它生成的实际html(
@html.LabelFor()
@html.DisplayWithIdForApplication()
)这些代码中的很多都毫无意义。您正在使用
LabelFor()
生成与控件关联的可访问性元素,但不生成控件(无法聚焦隐藏的元素!)。为什么要创建
?你应该学会使用
TagBuilder
——这段代码几乎不可能调试。@StephenMuecke我会看看
TagBuilder
,然后再给你回复
$("div[class='changeStatus_application']").html(applicationName);