Asp.net mvc 如何在MVC 3中禁用DropDownList

Asp.net mvc 如何在MVC 3中禁用DropDownList,asp.net-mvc,asp.net-mvc-3,Asp.net Mvc,Asp.net Mvc 3,我正在视图中使用以下标记,并希望禁用DropDownList <div class="editor-field"> @Html.DropDownList("EquipID", "Select Equipment") @Html.ValidationMessageFor(model => model.EquipID) </div> 试试这个: @Html.DropDownList("EquipID",null, "Se

我正在视图中使用以下标记,并希望禁用DropDownList

<div class="editor-field">
            @Html.DropDownList("EquipID", "Select Equipment")
            @Html.ValidationMessageFor(model => model.EquipID)
</div>
试试这个:

@Html.DropDownList("EquipID",null, "Select Equipment", new { @disabled = "disabled" })
关于

试试这个:

@Html.DropDownList("EquipID",null, "Select Equipment", new { @disabled = "disabled" })
<div class="editor-field">
  @Html.DropDownList("EquipID", "Select Equipment", new { @disabled = "disabled" })
  @Html.ValidationMessageFor(model => model.EquipID)
</div>
问候

<div class="editor-field">
  @Html.DropDownList("EquipID", "Select Equipment", new { @disabled = "disabled" })
  @Html.ValidationMessageFor(model => model.EquipID)
</div>
您的设备列表来自ViewBag.EquipID


您的设备列表来自ViewBag.EquipID。

如果正确检查方法的智能性,您将获得接受字典类型的属性参数。在这里,您可以传递一个或多个html属性,以根据需要自定义显示

对于您的解决方案,您可以添加以下内容

@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled"})
@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled", color="#ffffff", name="name"})
但是,如果需要自定义/覆盖更多属性,则可以轻松执行以下操作

@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled"})
@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled", color="#ffffff", name="name"})

如果您正确地检查了方法的智能性,您将获得接受字典类型的attributes参数。在这里,您可以传递一个或多个html属性,以根据需要自定义显示

对于您的解决方案,您可以添加以下内容

@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled"})
@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled", color="#ffffff", name="name"})
但是,如果需要自定义/覆盖更多属性,则可以轻松执行以下操作

@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled"})
@Html.DropDownList("EquipID", null, "Select Equipment", new { disabled = "disabled", color="#ffffff", name="name"})

我们可以将html属性作为参数传递,并在其中设置任何已定义的html属性

@Html.DropDownList("EquipID", "Select Equipment", new { @disabled = "disabled" })

关于

我们可以将html属性作为参数传递,在这里我们可以设置任何定义的html属性

<div class="editor-field">
  @Html.DropDownList("EquipID", "Select Equipment", new { @disabled = "disabled" })
  @Html.ValidationMessageFor(model => model.EquipID)
</div>
@Html.DropDownList("EquipID", "Select Equipment", new { @disabled = "disabled" })

考虑到INSERT语句与外键约束FK_dbo.Calibration_dbo.Equipment_EquipID冲突。数据库校准、表dbo.Equipment、列“Equipmid”中发生冲突。声明已经终止。@jawadhasan您的问题特别询问了如何禁用下拉列表,这和几乎所有答案都描述了该列表;您从未提到过任何有关SQL约束的内容。与其复制和粘贴错误消息,不如相应地更新您的问题,以包含更多详细信息/上下文。@jawadhasan如果您不希望用户更改设备,则应始终在服务器端执行此类检查。当您禁用像disabled=disabled这样的下拉列表时,您真正要做的就是在客户端禁用它。这是为了重新启用它,让你的用户做你不希望他们做的事情。要修复错误,只需在将其保存到DB之前,在操作中指定要设置为默认值的EquipID即可。这样,无论表单中的内容是什么,用户都应该始终获得适当的EquipID。INSERT语句与外键约束FK_dbo.Calibration_dbo.EquipID冲突。数据库校准、表dbo.Equipment、列“Equipmid”中发生冲突。声明已经终止。@jawadhasan您的问题特别询问了如何禁用下拉列表,这和几乎所有答案都描述了该列表;您从未提到过任何有关SQL约束的内容。与其复制和粘贴错误消息,不如相应地更新您的问题,以包含更多详细信息/上下文。@jawadhasan如果您不希望用户更改设备,则应始终在服务器端执行此类检查。当您禁用像disabled=disabled这样的下拉列表时,您真正要做的就是在客户端禁用它。这是为了重新启用它,让你的用户做你不希望他们做的事情。要修复错误,只需在将其保存到DB之前,在操作中指定要设置为默认值的EquipID即可。这样,无论表单中的内容是什么,用户都应该始终获得适当的EquipID。INSERT语句与外键约束FK_dbo.Calibration_dbo.EquipID冲突。数据库校准、表dbo.Equipment、列“Equipmid”中发生冲突。该语句已终止。INSERT语句与外键约束FK_dbo.Calibration_dbo.Equipment_EquipID冲突。数据库校准、表dbo.Equipment、列“Equipmid”中发生冲突。该语句已终止。这给了我错误,但是如果我使用了@Html.dropdownStequipid,null,选择设备,新建{disabled=disabled},那么在Create ActionMethod中关联的设备ID为null这给了我错误,但是如果我使用了@Html.dropdownStequipid,null,选择设备,新建{disabled=disabled}那么在Create ActionMethod中关联的EquipID为NULL
<div class="editor-field">
  @Html.DropDownList("EquipID", "Select Equipment", new { @disabled = "disabled" })
  @Html.ValidationMessageFor(model => model.EquipID)
</div>