下拉不是维持其状态并仅显示选定的值

时间:2015-08-10 18:27:13

标签: asp.net-mvc-3

我想从我的下拉列表中选择年份,那一年将被传递到where子句中的程序并获得结果。它工作正常,但在视图中,所选值仅可见。

示例如果我从下拉列表中选择2015,其中包含2015年和2016年的值,那么在视图上只有2015在下拉列表中可见。 记录是完美的。

模型

 public class Data

{
    [Key]

    public string DataName { get; set; }

    public int Year { get; set; }
}

控制器

public ActionResult Test()
    {
       VMNews objnews = new VMNews();
       if (Request["ddlYear"] != null)
        {    
            string selectedValue = Request["ddlYear"];
            objnews.DataName = db.Database.SqlQuery<Data>("usp_year @Year",new SqlParameter("@Year",selectedValue)).ToList();
        }
        Response.Write("Nothing Selected");
        return View("Index",objnews);
    }

查看

 using (Html.BeginForm("Test","Home"))
{     
    @Html.DropDownList("ddlYear", new SelectList(Model.MovieName, "Year", "Year"), "ALL")
    <button type="submit">Button</button>

}
}

仅在视图级别存在问题,我在控制器和视图ForMethod.POST上使用了HTTPPost选项,但它没有用。

1 个答案:

答案 0 :(得分:0)

如果我直截了当,你想添加一个超过1值的listItem? 在这种情况下,您应该将数据连接到一个sigle字符串值 (删除public int Year {get; set;} / add public string Year {get; set;})然后将其拆分为POST(ActionResult Test)并在程序中使用它们。