Harpreet_125 Ответов: 1

Выберите значение выпадающего списка из сеанса


у меня есть dropdownlist в моем html-коде. что я хочу: если session "location" не является нулевым, то выберите значение из выпадающего списка, как оно есть в сеансе. надеюсь, вы поняли мой вопрос. я новичок в mvc и многого не знаю.. Спасибо

@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>



}

Что я уже пробовал:

я попробовал использовать javascript, но ничего не вышло..
<script>
    $('#DeliveryLocation').val('Baner').change();
</script>

1 Ответов

Рейтинг:
0

F-ES Sitecore

Вы должны прочитать книгу по MVC или попробовать онлайн-учебники (google "MVC Music Store"), чтобы понять, как должен работать MVC.

В основном вам нужна модель представления, которая содержит возможные местоположения и выбранное местоположение, и из этого вы можете использовать помощника, чтобы показать выпадающий список для вас.

Модель

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");
    }


Контроллер

[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);
}


Смотреть

@model HomeModel

@using (Html.BeginForm())
{
    @Html.DropDownListFor(m => m.Location, Model.Locations)

    <p><input type="submit" value="Submit"/></p>
}