ASP.NET MVC和JQuery Dialog回发

时间:2010-02-11 17:47:14

标签: jquery asp.net-mvc

我在MVC中有一个简单的List视图,可以呈现一些产品。 一旦选择了1个产品,我就会以这种方式打开一个JQuery模式弹出窗口:

    function showDetails(id) {
    hostId = id;
    $("#detailDialog").load('/Product/Details/' + hostId);
    $("#detailDialog").dialog("open");
}

模态弹出窗口正确加载带有详细信息的局部视图。 只要我在视图中按提交,视图就会在全新的页面中返回结果(ActionResult),只显示视图的内容。 如何将所有内容保留在弹出窗口内?我需要这样做,因为如果表单有一些无效字符,我想在弹出窗口中重新显示验证错误。

1 个答案:

答案 0 :(得分:1)

您需要发布更多代码。就像现在你只需打开对话框。我没有看到任何对话框按钮。所以我猜你只是把你自己的按钮从ajax加载加载?

所以,如果我们看到代码也可能会有帮助,就像你说提交一样。这是否意味着您有一个提交请求的按钮?如果是这样,那将会发回完整的帖子。

您必须取消提交请求,例如在其末尾添加“return false”或将提交按钮更改为常规按钮并将其与$ .post()挂钩;

这只是阻止提交调用的一个简单示例。

http://jsbin.com/avebu/2

如果你删除了返回false,它将再次加载整个页面。