【问题标题】:How to disable a DropDownList when a checkbox is checked in ASP MVC在 ASP MVC 中选中复选框时如何禁用 DropDownList
【发布时间】:2013-05-22 09:39:52
【问题描述】:

我正在使用 C# 和 SQL Server 2005 开发一个 ASP .Net MVC 3 应用程序。

我也在使用实体框架和代码优先方法。

在一个视图中,我有 2 个复选框和 DropDownList。

我希望当我选中复选框时,DropDownList 和另一个复选框变为 DISABLED。

我使用 javascript 来做到这一点。

复选框是完美的,它已被禁用,但我仍然遇到 DropDownList 的问题。

这是代码:

<div>
<input type="checkbox" name="option1" value="Poste Initial" id= "chkMain" />Poste Initial<input type="checkbox" name="option2" value="Poste Final" id= "chkFirst" onclick="test2();"/>Poste Final</div>

<div><%:Html.Label("Poste Suivant :")%><%: Html.DropDownListFor(model => model.PosteSuivantSelected, Model.PostesItems); ID = "dd"%></div>

<script type="text/javascript">

         function test2() {
             var chkMain = document.getElementById('chkMain');
             var chkFirst = document.getElementById('chkFirst');
             var dd = document.getElementById('dd');

             if (chkFirst.checked) {
                 chkMain.disabled = 'disabled';
                 dd.disabled = 'disabled';

             }
             else {
                 chkMain.disabled = false;

             }
         }

    </script>

我在 DropDownList 的行中有一个编译错误

【问题讨论】:

  • 你能发布错误的任何细节吗?
  • 编译错误描述:在编译服务此请求所需的资源时出错。请查看以下特定错误详细信息并适当修改您的源代码。编译器错误消息:CS1026:) 预期源错误:
    model.PosteSuivantSelected, Model.PostesItems); ID = "dd"%>

标签: c# javascript visual-studio-2010 asp.net-mvc-3


【解决方案1】:
<%: Html.DropDownListFor(
    model => model.PosteSuivantSelected, Model.PostesItems); ID = "dd"%>

这是无效的语法。如果您希望为下拉列表分配一个 id,请使用匿名类型:

Html.DropDownListFor(
    model => model.PosteSuivantSelected, Model.PostesItems, new { @id = "dd" });

【讨论】:

    猜你喜欢
    • 2013-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-28
    • 2023-04-01
    • 2010-11-01
    • 1970-01-01
    相关资源
    最近更新 更多