从会话中选择下拉列表值 [英] Select dropdownlist value from session
本文介绍了从会话中选择下拉列表值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的html代码中有下拉列表。我想要的是:如果会话location不为null,则从会话中的下拉列表中选择值。我希望你理解我的问题。我是mvc的新手。不知道多少..谢谢
i have dropdownlist in my html code. what i want is: if session "location" is not null then select value from dropdown as it is in the session. i hope you understand my question. i am new to mvc. dont know much.. Thanks
@if (Session["Location"] == null)
{
<select class="form-control" id="DeliveryLocation" name="DeliveryLocation">
<option value="" selected disabled hidden>Choose Your Location</option>
<option value="Aundh">Aundh</option>
<option value="Baner">Baner</option>
<option value="Balewadi">Balewadi</option>
<option value="Pimpri">Pimpri</option>
<option value="Nilakh">Nilakh</option>
<option value="Wakad">Wakad</option>
</select>
}
else
{
// i want code here to select value from dropdown as it is in location session
<pre> <select class="form-control" id="DeliveryLocation" name="DeliveryLocation">
<option value="" selected disabled hidden>Choose Your Location</option>
<option value="Aundh">Aundh</option>
<option value="Baner">Baner</option>
<option value="Balewadi">Balewadi</option>
<option value="Pimpri">Pimpri</option>
<option value="Nilakh">Nilakh</option>
<option value="Wakad">Wakad</option>
</select>
}
我尝试了什么:
i尝试使用javascript但未完成..
}
What I have tried:
i tried using javascript bt not done..
<script>
$('#DeliveryLocation').val('Baner').change();
</script>
推荐答案
('#DeliveryLocation')。val('Baner')。change() ;
< / script>
('#DeliveryLocation').val('Baner').change(); </script>
你应该阅读一本关于MVC的书或尝试在线教程(谷歌MVC音乐商店)到了解MVC应该如何工作。
基本上你需要一个包含可能位置和所选位置的视图模型,从中你可以使用帮助器来显示给你的下拉菜单。
型号
You should go through a book on MVC or try on-line tutorials (google "MVC Music Store") to understand how MVC is supposed to work.
Basically you need a view model that contains the possible locations and the selected location, and from that you can use a helper to show the dropdown for you.
Model
public class HomeModel
{
public string Location { get; set; }
public SelectList Locations { get; set; }
public HomeModel()
{
List<SelectListItem> items = new List<SelectListItem>();
// these are hard-coded here but can come from a database or
// some other location
items.Add(new SelectListItem { Text = "Aundh", Value = "Aundh" });
items.Add(new SelectListItem { Text = "Baner", Value = "Baner" });
items.Add(new SelectListItem { Text = "Balewadi", Value = "Balewadi" });
items.Add(new SelectListItem { Text = "Pimpri", Value = "Pimpri" });
this.Locations = new SelectList(items, "Value", "Text");
}
控制器
Controller
[HttpGet]
public ActionResult Index()
{
HomeModel model = new HomeModel();
if (Session["Location"] != null)
{
model.Location = (string)Session["Location"];
}
return View(model);
}
[HttpPost]
public ActionResult Index(HomeModel model)
{
string selectedLocation = model.Location;
// remember selection for later
// you don't need this code here, I'm just doing it for easier testing
Session["Location"] = selectedLocation;
return View(model);
}
查看
View
@model HomeModel
@using (Html.BeginForm())
{
@Html.DropDownListFor(m => m.Location, Model.Locations)
<p><input type="submit" value="Submit"/></p>
}
这篇关于从会话中选择下拉列表值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文