我有一个C#.Net MVC3网络应用程序,我们使用HTML.TextAreaFor()文本区域进行编辑和显示。在一个实例中,它应该是可编辑的,而在另一个实例中,它只能显示。我怎么做到这一点?我应该使用另一个元素,还是可以禁用TextAreaFor? 此外,TextAreaFor还需要在仅显示模式下进行自动换行...它位于网格单元格中
答案 0 :(得分:20)
只需使用htmlAttributes
参数:
@Html.TextAreaFor(model => model.Something, new { @readonly = true })
要整理视图中的if
/ else
,请使用扩展方法执行if检查并呈现不同的文本框。
不确定你对自动换行的意思 - 从我的理解<textarea>
元素总是换行,除非你使用wrap="off"
答案 1 :(得分:1)
对于问题的第二部分,您可以像这样关闭包装:
@Html.TextAreaFor(m => m.Name, new { wrap = "off" })