выпадающий - используйте jquery в mvc

0

Я пытаюсь заполнить государство ddl по выбору страны из списка. Я могу получить результат фильтра на основе критериев stateList функции stateList. Но когда он возвращается к просмотру, он отображает список состояний. Можете ли вы сказать мне, где все пошло не так.

Заранее спасибо.

//This is my controller class 
public ActionResult  Country()
{
    Country country = new Country();
    ListCountry objCountry = new ListCountry(country);
    return View(country);
}

//This method calls  on selection of countryanem   
public ActionResult stateList()
{
    Country country = new Country();
    var state = Request.Form["_countryId"];
    country.CountryId = _countryId; 
    ListCountry objCountry = new ListCountry(country);
    return View(country);
}
}

//This  is model class  
public partial class Country
{
    public SelectList countryList { get; set; }
    public SelectList stateList { get; set; }
}

public partial class ListCountry
{
    Entities db = new Entities();

    //This constructorof Listcounty  populate the country and state ddl 
    public ListCountry(Country country) 
    {
        string cntId1    = country.countryId;
        int id = Convert.ToInt32(cntId1);
        country.countryList = new SelectList(db.Countries.ToList(), "CountryId", "CountryName");
        if (id > 0 )
        {
            List <State> list = db.States.Where(p => p.countryId == id).ToList();
            country.stateList = new SelectList(list, "StateID", "StateName");
        }
        else
        {
            country.stateList = new SelectList(db.States.ToList(), "StateID", "StateName");
        }
    }
Теги:
asp.net-mvc

1 ответ

0

Пара вещей:

  1. Из вашего описания кажется, что вы вызываете stateList при первой загрузке. Вы включаете страну в свой звонок? Если вы этого не сделаете, он всегда будет предоставлять вам все списки состояний, так как в вашем запросе ему нужна country.countryId CountryId.

  2. Я не рекомендую объявлять SelectList в вашей модели. Предполагается, что MVC разделяет эти две проблемы. Что произойдет, если вдруг вы решите не использовать выбор? Это должно касаться только View.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню