复选框和控制器

时间:2012-11-30 14:33:16

标签: c# asp.net-mvc-3 entity-framework controller

我有一个模型有两个虚拟属性,即

  

public virtual IEnumerable MediumIds {get;组; }
     public virtual IEnumerable AnsLanguageIds {get;组; }

我使用ViewBag来填充它们,即

  

ViewBag.MediumIds = db.ExamMediums.Where(x => x.ExamId == _ExamId).Select(x => x.Medium);     ViewBag.AnsLanguageIds = new SelectList(db.AnswerLanguages.ToList(),“AnswerLanguageId”,“AnsLanguage”);

我的观点是

  

@foreach(var item in                   ViewBag.MediumIds)                           {

               <input id="MediumIds" name="MediumIds" value="@item.MediumId" type="checkbox"  /><strong>
                            @item.Medium1 </strong>

                        @Html.DropDownList("AnsLanguageIds")
                        <br />
                    }

我想要选中复选框时的功能,而不是只应该启用下拉列表,否则应该禁用它,我也希望选择哪种中介语

您的回答将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以通过将new { disabled = "disabled" }作为DropDownList()方法的htmlAttributes参数传递,默认情况下禁用下拉列表。当选中每个复选框时,此JQuery应切换选择的禁用状态:

$(function() {
    $("input#MediumIds").click(function() {
        var checkbox = $(this);
        var dropDownlist = checkbox.sibling("select:first");
        dropDownlist.attr("disabled", checkbox.is(":checked") ? "" : "disabled");
    });
});

......我不确定你的意思是“我想要哪种媒体选择了哪种语言”?