【问题标题】:Render partial form in jQuery dialog在 jQuery 对话框中渲染部分表单
【发布时间】:2009-06-04 12:58:26
【问题描述】:

你们中的大多数人可能都知道 Nerddinner.com,我的页面很像,所以让我们想象一下对 Nerddinner 这样做。

编辑晚餐时,您将被重定向到 Dinners/Edit.aspx,并显示类型为 DinnerFormViewModel 的部分视图 DinnerForm.ascx。

如果您不想在 jQuery UI 对话框中显示此 DinnerForm 怎么办?

我在想:在您选择编辑晚餐的页面上,您将有一个包含部分视图 DinnerForm 的 div:

<div id="editDinnerForm">
    <% Html.RenderPartial("DinnerForm", chosenDinnerToEdit); %>
</div>

因此,当您选择要编辑的晚餐时,该 div 会显示为 jQuery UI 对话框,并且所选晚餐会提供给局部视图。 (?!)

我的问题是如何填充当前晚餐要编辑的部分视图?

提前致谢。

【问题讨论】:

    标签: jquery asp.net-mvc partial-views


    【解决方案1】:

    我不确定我的问题是否正确,为什么不能通过 Ajax 将部分视图加载到文档中?在这个原因你会得到这样的东西:

    <select onchange="$('#editDinnerForm').load(<url>,{dinner:this.value});">
        <option>Dinner1</option>
        <option>Dinner2</option>
    </select>
    

    您还可以轻松缓存这些请求,这样您就不必一次又一次地呈现这些部分表单......

    【讨论】:

    • 似乎是一个很好的解决方案。我会试试看。但是出现了另一个问题......如果表单无效并且用户被重定向到编辑页面怎么办?如果出现错误,如何弹出对话框,以便用户获得错误消息和表单?
    • 在这种情况下,您应该很容易在服务器上预渲染内容(因为您知道他的选择)或者只是在 $(document).ready 中发出相同的 Ajax 请求(...) 函数
    猜你喜欢
    • 2014-02-21
    • 1970-01-01
    • 2013-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多