首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PartialView UI对话框中打开jQuery时出现的问题

在PartialView UI对话框中打开jQuery时出现的问题
EN

Stack Overflow用户
提问于 2011-05-10 16:59:48
回答 3查看 1.8K关注 0票数 0

我使用Loading a partial view in jquery.dialog作为引用,以便在对话框中打开部分视图。这对我起了几次作用,但现在我试图使用相同的设置,它只是不起作用.

我有两个问题想问.

对话框打开后,页面被重定向到名为ActionMethod的页面,后者返回部分视图。所以我最终得到了一个没有样式的页面,显示了正确的信息。下面是代码:

代码语言:javascript
复制
    public ActionResult Compare()
        {
            var user = _helper.GetUserFromSession(HttpContext.User.Identity.Name);
            var items = user.WatchList.ToList();
            var viewModel = Mapper.Map<IList<Item>, List<IndexItem>>(items);
            return PartialView(viewModel);
        }

下面是jQuery代码:

代码语言:javascript
复制
        $('#compareItemsDialog').dialog({
            autoOpen: false,
            width: 850,
            height: 600,
            draggable: false,
            dialogClass: "compareDialog",
            title: 'Compare',
            open: function (event, ui) {
                $(this).load("/WatchList/Compare");
            }
        });
        $('#watchListCompareLink').click(function () {
            $('#compareItemsDialog').dialog('open');
        });

我只是不明白为什么这会引起问题..。我有其他的部分视图是完全相同的设置,但他们是完美的工作!

更新:上面的内容已经解决了。现在我只需要一个下面解释的问题的答案..。

如何在调用对话框的同时传递自定义选项/数据?我在想,也许我可以做一些像$('#compareItemsDialog').dialog('open', { id = someVar });这样的事情,那么这有可能吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-10 21:39:23

问题:如何在调用对话框的同时传递自定义选项/数据?

而不是直接调用jQuery对话框,而是将此功能封装在您自己的自定义javascript函数中,该函数接受您的自定义数据。然后在那里有您的javascript分支逻辑。

票数 1
EN

Stack Overflow用户

发布于 2011-05-10 19:18:35

我看不到在jQuery UI文档中,您可以向对话框传递一个open:选项。这是来自较早版本的jQuery UI吗?

我经常将部分视图加载到对话框中,但我所做的有点不同(相反,有点)。

我首先向服务器发送ajax请求以获得部分视图。然后在成功的情况下,替换对话框的HTML内容,最后打开它。

代码语言:javascript
复制
$.ajax({
    url:"/action/param",
    success:function(data){
           $("#Dialog > some_inside_div").html(data);
           $("#Dialog").dialog("open");
           }
   });

至于你的第二个问题。我不知道如何将自定义数据传递到对话框中。在构建对话框时,options变量会得到扩展,但是您必须将自己的逻辑放入其中,才能对数据进行实际操作。您可以获得UI框架的非缩小源代码,并尝试自己扩展它。

票数 0
EN

Stack Overflow用户

发布于 2011-05-10 20:53:19

如何在调用对话框的同时传递自定义选项/数据?

您可以使用jQuery数据将数据传递给对话框。

http://api.jquery.com/jQuery.data/

下面是关于如何使用的详细示例:

Passing data to a jQuery UI Dialog

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5953625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档