好的,我正在尝试编辑另一个人的asp / mvc应用程序。在其中一个页面上有一个表单,该表单的一部分是 TextArea 。我想做两件事。
1)设置200个字符的限制(我通过maxlength html代码完成)
2)在所有条目上放置 PreFIX (用户不需要查看此内容)。 这是我的问题 - 我起初可以通过半屁股方法将值=放入字段中,但很快就知道TextArea不支持这一点。除此之外,用户可以删除前缀。
我有复制/粘贴我认为是与功能/区域相关的代码区域...我是MVC / .net / asp等的新手。我在4个文件之间蹦蹦跳跳的速度非常快实际上做了什么。
我在这里如何/将会改变:
CSHTML文件(表单部分):
<td colspan="2">
<fieldset style="padding: 2px; margin: 2px">
<legend>Inve Order Comments</legend>
@Html.TextAreaFor(model => model.InvOrderComments, new {maxlength = "200", style = "width:250px;" })
</fieldset>
</td>
Model.cs - file
[DisplayName("Inv Order Comments")]
public string InvOrderComments { get; set; }
Controler.cs文件
if (model.IssueOtherOrder && (("Free Form").Equals(model.InvOrderReason) && string.IsNullOrWhiteSpace(model.InvOrderComments)))
{
ModelState.AddModelError("", "Inve Order Comments is a required field.");
ModelState.AddModelError("InvOrderComments", "");
}
Reference.cs - 文件(也在那里找到)
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true)]
public string InvOrderComments {
get {
return this.invOrderCommentsField;
}
set {
this.invOrderCommentsField = value;
}
}
答案 0 :(得分:0)
在后端,您可以附加所需的文本。来自客户端的OnPostBack,希望您将这些信息存储在某个地方,您可以检查以确保该值未被用户删除,如果是,您可以将其添加回来。