MVC 获取下拉框的值的问题!
我现在有个页面有一个下拉框,假设绑定了value是1 text是 中国。。。value是2 text是美国,下拉框选择项默认在1上。我想在打开这个页面的时候,直接获取到1,传给sql语句,显示中国的数据,而我现在只有点击 查询按钮时,才能获取到这个值。。。刚打开页面是null 、、、应该怎么写 --------------------编程问答-------------------- 既然是你传过去的,还需获取么? --------------------编程问答-------------------- js脚本放body最底部 --------------------编程问答--------------------
我就一个页面。Control里写了一个ShowData方法,先绑定好了,ViewData["ddl"],然后就执行一个现实数据库数据的方法,其中要传入下拉框ID。。。可我打断点调试,每次这个方法获取到的都是null,而我点击查询打断点,这里就是有值的了。我想一打开页面就能有值。。。初学这个,不知道描述清楚了没有。。
不用MVC时就 用ddl.selectValue 就是的呀 这个怎么写 --------------------编程问答--------------------
没明白是什么意思。。我好像没有js脚本咧 都是基本的代码 --------------------编程问答-------------------- 把你代码贴一下呢 --------------------编程问答--------------------
把你代码贴一下呢
js脚本放body最底部
没明白是什么意思。。我好像没有js脚本咧 都是基本的代码
我明天贴。。谢谢你。。我今天刚下班 笔记本没带回来。。。我明天贴这里来。 --------------------编程问答--------------------
既然是你传过去的,还需获取么?
我就一个页面。Control里写了一个ShowData方法,先绑定好了,ViewData["ddl"],然后就执行一个现实数据库数据的方法,其中要传入下拉框ID。。。可我打断点调试,每次这个方法获取到的都是null,而我点击查询打断点,这里就是有值的了。我想一打开页面就能有值。。。初学这个,不知道描述清楚了没有。。
不用MVC时就 用ddl.selectValue 就是的呀 这个怎么写
public ActionResult ShowData(int? CurrentPageIndex, string button, string qwert,
string AreaID_equip, string SpecialtyID_equip, string FuzhuAreaID_equip, string LFE_equip,
string CycleAlermID_equip, string QualityValidateID_equip)
{
try
{
//禁止页面被缓存
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetExpires(DateTime.Today.AddYears(-2));
gStrUserName = HttpUtility.UrlDecode(Request.Cookies["User"].Value.ToString());
if (Request.Cookies.Get("Right") != null)
{
if (Request.Cookies["Right"].Value.IndexOf(".1.") != -1)//查看权限
{
ViewData["pageIndex"] = CurrentPageIndex ?? 1; //为了给视图保存用
//为了使每次查询时Dropdownlist的选择项不重置
ViewData["AreaID"] = new SelectList(GetArea(gStrUserName), "AreaID", "Area", Request.QueryString["AreaID_equip"]);
ViewData["SpecialtyID"] = new SelectList(GetSpecialty(gStrUserName), "SpecialtyID", "Specialty", Request.QueryString["SpecialtyID_equip"]);
ViewData["FuzhuAreaID"] = new SelectList(GetFuzhuArea(), "FuzhuAreaID", "FuzhuArea", Request.QueryString["FuzhuAreaID_equip"]);
ViewData["LFE"] = new SelectList(GetLFE(), "LFE", "FuzhuLFE", Request.QueryString["LFE_equip"]);
int pageSize = 15;//每页显示数据个数
//在某选项的某页点击某item的编辑后,编辑完毕跳转至该页面时,id==null,pageIndex有值,应将pageIndex赋予id使得页面仍然停留在编辑前的那一页。
if (Request.QueryString["pageIndex"] != null && CurrentPageIndex == null)
{
CurrentPageIndex = Int32.Parse(Request.QueryString["pageIndex"]);
}
IList lLst = new ArrayList();
lLst = HotEquipmentServer.GetAll(CurrentPageIndex ?? 1, pageSize, GetWhere(Request.QueryString["AreaID_equip"], Request.QueryString["SpecialtyID_equip"], Request.QueryString["FuzhuAreaID_equip"], Request.QueryString["LFE_equip"],
Request.QueryString["CycleAlermID_equip"], Request.QueryString["QualityValidateID_equip"], gStrUserName));
if (lLst.Count == 0)//说明该页无数据
{
CurrentPageIndex = 1;
lLst = HotEquipmentServer.GetAll(CurrentPageIndex ?? 1, pageSize, GetWhere(Request.QueryString["AreaID_equip"], Request.QueryString["SpecialtyID_equip"], Request.QueryString["FuzhuAreaID_equip"], Request.QueryString["LFE_equip"],
Request.QueryString["CycleAlermID_equip"], Request.QueryString["QualityValidateID_equip"], gStrUserName));
}
HotEquipment = Common.ConvertIListToList<HotEquipment>(lLst);
//用构造函数创建PagedList<T>对象
int itemCount = HotEquipmentServer.GetCount(GetWhere(Request.QueryString["AreaID_equip"], Request.QueryString["SpecialtyID_equip"], Request.QueryString["FuzhuAreaID_equip"], Request.QueryString["LFE_equip"],
Request.QueryString["CycleAlermID_equip"], Request.QueryString["QualityValidateID_equip"], gStrUserName));
//pagedHotEquipment = new PagedList<HotEquipment>(HotEquipment, CurrentPageIndex ?? 1, 10);
pagedHotEquipment = new PagedList<HotEquipment>(HotEquipment, CurrentPageIndex ?? 1, pageSize, itemCount);
if (Request.IsAjaxRequest())
return PartialView("UCMvcPage", pagedHotEquipment);
return View(pagedHotEquipment);
}
else
{
return RedirectToAction("LogOn", "Account", new { right = "-1" });
}
}
return RedirectToAction("LogOn", "Account", new { right = "-2" });
}
catch
{
return RedirectToAction("LogOn", "Account", new { right = "-2" });
}
}
上面代码中,ViewData["AreaID"] = new SelectList(GetArea(gStrUserName), "AreaID", "Area", Request.QueryString["AreaID_equip"])中的Request
,都是null. --------------------编程问答--------------------
既然是你传过去的,还需获取么?
我贴了代码,来帮我看看好吗.有空
--------------------编程问答-------------------- 快来人帮我看看..
HotEquipmentServer.GetAll 这是我获取所有数据的方法,这个方法参数是页面上的下拉框,可是初次加载这个方法时都是null 只有点击本页面的查询按钮时,才会将下拉框选择的值传进来,我怎么做才能初次时就传进来呢 --------------------编程问答-------------------- 初次加载?你赋初值好了,这个初值你的action是知道的,因为页面的值也是action给它的 --------------------编程问答--------------------
初次加载?你赋初值好了,这个初值你的action是知道的,因为页面的值也是action给它的
我现在是, 页面初次加载时,下拉框已经不是|---请选择---|了,是有一个确切的选项,可我偏偏在ActionResult方法里获取不到,我就不明白为什么了...你是让我给GetAll获取所有数据的方法参数中,赋予下拉框显示的值吗?
那我感觉是凑起来,不是从下拉框获取的. --------------------编程问答--------------------
既然是你传过去的,还需获取么?
我现在慢慢理解你的含义了,你是说 View里面的下拉框控件,本来就是初次加载的 ActionResult ShowData方法传过去,也就没有 等下拉框绑定完 再获取一说了 ?? 以前webform做都是先绑定 然后再DropDownlist1.selectValue的..........禁锢住了....我理解的对不对啊
补充:.NET技术 , ASP.NET