使用MVC3中的EditorFor输入字段的宽度

时间:2011-05-06 15:56:31

标签: asp.net-mvc

我对如何在MVC中设置输入字段的宽度提出了一些很好的建议:

@Html.TextBoxFor(model => model.Status.RowKey, new { size = 200, disabled = "disabled", @readonly = "readonly" })

现在我已尝试将其用于其他类型的字段,但它不起作用:

@Html.EditorFor(model => model.Status.BrowserTitle, new { size = 80 })

我还想将此设置为80个字符但是当我这样做时,源不会改变并且不显示80.

BEV

4 个答案:

答案 0 :(得分:6)

如果你需要使用EditorFor而不是TextBoxFor并且在页面上有多个编辑器,但只需要更改特定的编辑器的宽度...最简单的方法是将css样式添加到类ID中:< / p>

<style type="text/css">
    input#Status.BrowserTitle { width: 80px; }
</style>

答案 1 :(得分:3)

因为您使用的是Html.EditorFor而不是Html.TextBoxFor

更好的方法是使用CSS

input { width: 80em; }

答案 2 :(得分:0)

我在这里已经回答了这个问题:

https://stackoverflow.com/a/10200839/1280068

用于MVC3

@{ HtmlString BrowserTitle= new HtmlString(Html.EditorFor(model => model.Status.BrowserTitle).ToString().Replace("class=\"text-box single-line\"", "class=\"text-box single-line my80wideClass\"")); }

@BrowserTitle

答案 3 :(得分:0)

覆盖css对我有用:

.text-box
{
    width: 625px;
}

.multi-line.text-box
{
    height: 25px;
}

textarea
{
    min-height: 25px;
}