Как ajax загрузить список родительских и дочерних элементов во всплывающем окне JCuery / Asp.net MVC? - PullRequest
0 голосов
/ 10 апреля 2010

Я новичок в asp.net mvc. и у меня есть ссылка, которая во всплывающем окне показывает список из 3 панелей, который позволяет пользователю выбрать страну, регион и язык.

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

Я думал об использовании диалогового / модального jquery для этого, но поэтому я пытаюсь использовать для этого fancybox, который загрузит скрытый div из трех списков вверх.

есть ли лучший способ сделать это? или я не использую правильный плагин jquery? я думал о том, чтобы поместить все три панели в html-файл и сделать ajax-вызов, чтобы получить содержимое на этой странице и загрузить список, подобный этому, и просто использовать всплывающее окно html, как обычное всплывающее окно.

Есть предложения? я застрял, помогите !!

1 Ответ

1 голос
/ 10 апреля 2010

Вы можете использовать частичное представление в ASP.Net MVC для хранения всплывающего окна. Если вы используете ASP.Net MVC 2, вы можете включить частичное представление на своей странице, используя

<% Html.RenderAction("LanguageSelection", "SomeController") %>

Пусть ваш контроллер возвращает PartialView () вместо View ().

Если вы используете ASP.Net MVC 1, загрузите фьючерсы ASP.Net MVC 1 для этой функции.

Затем вы можете использовать любой модальный плагин диалогового окна, который вы хотите. Я предпочитаю использовать JQuery UI Dialog, но уверен, что prettybox будет работать аналогичным образом.

После выбора списка отправьте форму. В режиме частичного просмотра вы можете сделать что-то вроде:

     // POST:   
     [AcceptVerbs(HttpVerbs.Post)]  
     public ActionResult LanguageSelect(...)  
     {  
         ...
         [Change language setting somehow]
         return RedirectToAction(...);
     }  
...