我需要在表单中创建textarea字段
<textarea class="img-shadow" cols="20" id="Message" name="Message" rows="2">Message</textarea>
我写代码
@Html.TextAreaFor(model => model.Message, new { @class = "img-shadow" })
但我得到没有任何文字的空文本区域
<textarea class="img-shadow" cols="20" id="Message" name="Message" rows="2"></textarea>
如何添加文字?
答案 0 :(得分:5)
文本框的内容将是model.Message
的值。
这应该在Action
的{{1}}方法中设置,并传递给Controller
View
作为测试,只需在public ViewResult ActionName() {
var model = new ViewModel();
model.Message = "Text Area Content";
return View(model);
}
中输出model.Message
,它就会为空。
View
然后 <p>@Model.Message</p>
将输出
@Html.TextAreaFor(model => model.Message, new { @class = "img-shadow" })
答案 1 :(得分:3)
经过多次刮擦,我设法以这种方式完成。
@{ var _address="Line 1\nLine 2\n Line 3"; }
@Html.TextArea(Model.xxxx , new { id="address" } )
<script>
var x = @Html.Raw(Json.Encode( _address )) ;
document.getElementById("address").value = x;
</script>
如果你没有像换行符那样的控制字符\ n你可以用var x =“Text”替换var x = @ Html ......;
答案 2 :(得分:2)
@Html.TextAreaFor(model => model.Message, new { @class = "img-shadow", value = "added text" })
但是如果你在控制器Get方法中初始化你的模型,那么它会自动为你的textarea添加文本。
检查these教程
答案 3 :(得分:1)
将默认值添加到其中..通过
@Html.TextAreaFor(model => model.Message, new { @class = "img-shadow",@value = "added text" })
答案 4 :(得分:0)
在控制器写入
ModelVariable.Message= Server.HtmlDecode(ModelVariable.Message);
@Html.TextAreaFor(model => model.Message, new { @class = "img-shadow" })
它对我有用