我的Razor页面上的@HtmlTextBox
出现问题。
我希望从另一个@HtmlTextBox
填充该框,并且不可编辑,因为我希望将这些框导出到Excel文件。
<table style="border:none">
<tr>
<td><label class="editor-label">Start Date:</label></td>
<td>@Html.TextBox("StartDate", new { @readonly = "readonly" })</td>
@*<td>@Html.TextBox("StartDate"), new { @class = "date-picker" })</td>*@
</tr>
<tr>
<td><label class="editor-label">End Date:</label></td>
<td>@Html.TextBox("EndDate", new { @readonly = "readonly" })</td>
</tr>
<tr>
<td><label class="editor-label">Supplier Company Name</label></td>
<td>@Html.TextBox("Company")</td>
</tr>
</table>
有了它,它只是&#34; @readonly =&#34; readonly&#34;&#34;在我不想要的搜索框中,它仍然可以编辑。
答案 0 :(得分:2)
您使用了错误的重载。 TextBox(String, object)
期望值为第二个参数。
你想要的是TextBox(String, object, object)
,其中第三个参数是HTML属性:
@Html.TextBox("EndDate", "", new { @readonly = "readonly" })
答案 1 :(得分:1)
您必须在HTML帮助器中添加null参数:
现在你的助手应该是这样的:
@Html.TextBox("EndDate",null, new { @readonly = "readonly" })
And your code will be look like this :
<table style="border:none">
<tr>
<td><label class="editor-label">Start Date:</label></td>
<td>@Html.TextBox("StartDate",null, new { @readonly = "readonly" })</td>
@*<td>@Html.TextBox("StartDate"), new { @class = "date-picker" })</td>*@
</tr>
<tr>
<td><label class="editor-label">End Date:</label></td>
<td>@Html.TextBox("EndDate", null,new { @readonly = "readonly" })</td>
</tr>
<tr>
<td><label class="editor-label">Supplier Company Name</label></td>
<td>@Html.TextBox("Company")</td>
</tr>
</table>
干杯!!