Asp.net mvc 根据条件禁用列表中的控件
我的视图上有一个下拉列表和一个搜索按钮。当用户从下拉列表中选择年份并单击搜索时,我将显示一个列表 此列表有五列,第一列是复选框。其他列有文本框。还有一个保存按钮。用户选中几个复选框并单击“保存”。选定行的列值保存在数据库中,列表将重新加载 此时,当列表重新加载时,我想禁用一些行。这些是以前检查和保存的行 我想知道如何使复选框和文本框从控制器禁用 是否有任何方法可以在不使用jQuery或javascript的情况下从控制器中的C代码执行此操作Asp.net mvc 根据条件禁用列表中的控件,asp.net-mvc,asp.net-mvc-5,Asp.net Mvc,Asp.net Mvc 5,我的视图上有一个下拉列表和一个搜索按钮。当用户从下拉列表中选择年份并单击搜索时,我将显示一个列表 此列表有五列,第一列是复选框。其他列有文本框。还有一个保存按钮。用户选中几个复选框并单击“保存”。选定行的列值保存在数据库中,列表将重新加载 此时,当列表重新加载时,我想禁用一些行。这些是以前检查和保存的行 我想知道如何使复选框和文本框从控制器禁用 是否有任何方法可以在不使用jQuery或javascript的情况下从控制器中的C代码执行此操作 我正在使用Razor引擎。当复选框的每一行都有特定值时
我正在使用Razor引擎。当复选框的每一行都有特定值时,您的视图将在文本框上呈现禁用标志。你不能从控制器上真正完成这项工作 大概是这样的:
@foreach ()
{
<tr>
<td>
<input type="text" @(checkboxIsChecked ? "disabled=\"disabled\"" : "") />
</td>
</tr>
}
如果我使用的是@Html.TextBoxFor,那么?@Html.TextBoxname,value,new{@disabled=checkboxIsChecked?disabled:}}不确定您想用它实现什么。除非您为每行中的索引器生成隐藏输入,否则禁用集合中的输入将导致在您第二次回发时绑定失败。@StephenMuecke如何为每行放置隐藏输入?如果没有看到您的模型,我无法提供实际代码,但应该会有所帮助。注意这行。它允许非零基、非连续索引器回发并绑定到集合。