2012-03-06 5 views
0

Я создаю приложение поиска в mvc3, где у меня есть 2 таблицы: 1.State: Id (рк) и state_name 2.District: Id (рк), s_id (Fk), District_nameКак заполнить выпадающий список динамически в MVC3?

Я используя код первого и EF и есть база данных, созданная для этого называется Поиск

Я хочу, чтобы мой индекс, чтобы показать все состояния в выпадающем списке

следующий мой State.cs код

public partial class State 
{ 
    public State() 
    { 
     this.Districts = new HashSet<District>(); 
     this.Search_master = new HashSet<Search_master>(); 
    } 

    public int Id { get; set; } 
    public string State_name { get; set; } 

    public virtual ICollection<District> Districts { get; set; }} 

это мой округ класс:

public partial class District 
{ 
    public District() 
    { 
     this.Search_master = new HashSet<Search_master>(); 
    } 

    public int Id { get; set; } 
    public string District_name { get; set; } 
    public int StateId { get; set; } 

    public virtual State State { get; set; } } 

Как я называю данные, хранящиеся в таблицах в одну индексной странице спасибо заранее !!

ответ

0

Вы можете использовать JQuery для привязки к событию onChange в раскрывающемся списке State. И сделайте ajax-вызов, передающий stateId на сервер, который вернет список json с правильными районами.

Look here для образца

Update о том, как заполнить DropDownList look here

+0

: thnx для ответа ... bt я до сих пор не получил этого ... может у меня помочь ... я обновил свой ответ! – EqEdi

+0

Вы должны создать модель с двумя SelectList. один fo state и один для окружения и int StateId и int DistrictId и привязать их к soemthing следующим образом: model.States = new SelectList (repository.GetStates(), "Id", "Name", model.StateId); – Iridio

+0

: Thnx ..... bt Я получаю сообщение об ошибке в repository.GetStates() ..... мне нужно его создать? и если да, то где я вставляю ... в Viewmodel ?? – EqEdi

0

Пропустите содержимое первого выпадающего списка в модели и использовать

@ Html.DropDownListFor (м => m.MyList)

Привязать к событию изменения и отправить вызов jQuery ajax методу сервера, который вы создаете в режиме contro Мюллер. Передайте динамический список с помощью JSON и проанализируйте результаты. Вручную добавьте их в раскрывающийся список.

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

+0

: Привет thnx за помощь .... Могу ли вы отправить мне пример кода образца .... PLZ ... его немного срочно – EqEdi

Смежные вопросы