HTML5 / razor如何改变输入文本框的长度

时间:2011-09-06 12:21:51

标签: c# asp.net-mvc-3 html5 razor

为什么html5改变了这么多东西!

如何更改以下两个文本框的宽度?

  <div class="editor-field">
          @Html.TextBoxFor(m => m.S1_LandLine)
          @Html.ValidationMessageFor(m => m.S1_LandLine)
  </div>

  <input type="text" id="myinput" value="1" class="Q" data-id2="Q" />

<select id="S1_TitleID" name="S1_TitleID">
       <option selected="selected" value="1">Mr</option>
       <option value="2">Miss</option>
       <option value="3">Mrs</option>
</select>

4 个答案:

答案 0 :(得分:2)

使用CSS:

.editor-field input[type="text"], .editor-field select
{
  width:100px;
}

答案 1 :(得分:0)

生成所需的标记:

@Html.TextBoxFor(m => m.S1_LandLine, new { data_id2 = "Q", @class = "Q" })

长度而言(无论这意味着什么),您可以使用CSS来指定Q规则=&gt;与ASP.NET MVC和HTML5无关。

答案 2 :(得分:0)

HTML5究竟改变了什么?!我将假设您的长度是maxlength,或者您可以在文本框中输入的字符数。我可能错了,但你的问题有点含糊不清。

首先你可以这样做:

<div class="editor-field">  
    @Html.TextBoxFor(m => m.S1_LandLine, new { maxlength = 10 })  
    @Html.ValidationMessageFor(m => m.S1_LandLine)  
</div>  

第二个:

<input type="text" id="myinput" value="1" class="Q" data-id2="Q" maxlength="10" />

如果您没有看maxlength,那么您在寻找什么?

编辑:刚刚注意到你说的是宽度,如果是的话,请按照其他人的建议进行操作。

答案 3 :(得分:0)

我知道我有点偏离主题,但如果你正在寻找maxlength属性:

我们正在使用MVC模式:您的视图应该强烈输入您的模型。

查看

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

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

在模型中,我们可以设置定义的条件:

[Required]
[Range(1,10,ErrorMessage="Not in the 1-10 Range"]
public int Rating { get; set; }

[Required]
[StringLength(1024,ErrorMessage="Incorrect format")]
public string Body { get; set; }