Как динамически заполнить выпадающий список в MVC3? - PullRequest
0 голосов
/ 06 марта 2012

Я создаю поисковое приложение в mvc3, где у меня есть 2 таблицы: 1.State: Id (pk) и имя_состояния 2. Район: Id (pk), s_id (f.k.), District_name

Сначала я использую код и EF, и для него создана база данных под названием Search

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

следующий мой код 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; } }

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

Ответы [ 2 ]

0 голосов
/ 06 марта 2012

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

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

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

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

0 голосов
/ 06 марта 2012

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

Посмотрите здесь для образца

Update о том, как заполнить выпадающий список смотрите здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...