【问题标题】:How to ajax load a parent-child listbox in JQuery/Asp.net MVC popup?如何在 JQuery/Asp.net MVC 弹出窗口中加载父子列表框?
【发布时间】:2010-04-10 14:29:48
【问题描述】:

我是 asp.net mvc 的新手。 我有一个链接,它将弹出一个显示 3 个窗格的列表框,允许用户选择国家、地区和语言。

当用户点击语言时,这将重定向回控制器并刷新页面并显示正确的本地化内容。

我正在考虑使用 jquery 对话框/模态来执行此操作,但因此我尝试使用 fancybox 来加载三个列表框的隐藏 div。

有没有更好的方法来做到这一点?或者我没有使用正确的 jquery 插件? 我正在考虑将整个三个窗格放在一个 html 文件中并执行 ajax 调用以将内容放入该页面并像这样加载列表框,然后像普通弹出窗口一样使用 html 弹出窗口。

有什么建议吗? 我卡住了,救命!!

【问题讨论】:

    标签: jquery asp.net asp.net-mvc dialog popup


    【解决方案1】:

    您可以在 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(...);
         }  
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-03
      • 1970-01-01
      • 1970-01-01
      • 2016-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多