检查是否在html中选择了DropDownListFor项

时间:2015-05-06 18:06:05

标签: c# asp.net-mvc-4 razor

我有这样的cshtml页面:

<div class="form-group">
    @Html.LabelFor(m => m.QuestionnaireName, new { @class = "col-md-2 control-label" })
    @Html.DropDownListFor(m => m.QuestionnaireName, Model.Questionnaires, new { @id = "ddlQuestionnaires", @class = "form-control" })
    @Html.Label("Questions list:", new { @class = "col-md-2 control-label" })
    // here: how to check if any dropdownlistfor value is selected?

</div>

就像我在上面的评论中所说的那样。我想检查是否选择了DropDownListFor的值,如果是,则为所选问卷的元素构建dynamicaly(表或列表)。

假设Questionnaire.name是唯一ID,问卷包含列表问题。

这是我的模特:

public class FillQuestionnaireModel
{
    [Required]
    [DataType(DataType.Text)]
    [Display(Name = "Select questionnaire")]
    public string QuestionnaireName { get; set; }

    public SelectList Questionnaires { get; set; }
}

和我的控制器操作:

    public ActionResult Fill()
    {
        QuestionnaireServiceReference.QuestionnaireServiceClient client = new QuestionnaireServiceReference.QuestionnaireServiceClient();

        FillQuestionnaireModel model = new FillQuestionnaireModel();
        List<QuestionnaireServiceReference.Questionnaire> Questionnaires = client.GetAllQuestionnaires().ToList();

        Questionnaires.Insert(0, new QuestionnaireServiceReference.Questionnaire() { questionnaire_id = 0, name = "--Select--" });

        model.Questionnaires = new SelectList(Questionnaires, "name", "name");
        return View(model); 
    }
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Fill(FillQuestionnaireModel model)
    {
        if (!ModelState.IsValid)
        {
            string SelectedValue = model.QuestionnaireName;

            return View(model);
        }
        else
        {
            QuestionnaireServiceReference.QuestionnaireServiceClient client = new QuestionnaireServiceReference.QuestionnaireServiceClient();
            List<QuestionnaireServiceReference.Questionnaire> Questionnaires = client.GetAllQuestionnaires().ToList();

            Questionnaires.Insert(0, new QuestionnaireServiceReference.Questionnaire() { questionnaire_id = 0, name = "--Select--" });

            model.Questionnaires = new SelectList(Questionnaires, "name", "name");
        }
        return View(model);      
    }

0 个答案:

没有答案