如何在运行时设置LoadContentFrom kendo窗口

问题描述 投票:0回答:4

我是 kendo ui 的初学者,我想使用 kendoUi 窗口,但我在使用时遇到一些问题,我编写了这段代码来创建窗口

@(Html.Kendo().Window().Name("Details")
    .Title("Customer Details")
    .Visible(false)
    .Modal(true)
    .Draggable(true)
    .Width(300)       
)

在页面中我有一些按钮,我希望当用户单击此按钮之一时使用jquery动态设置

LoadContentFrom
。但我不知道该怎么做。请帮我。谢谢大家。

asp.net-mvc kendo-ui kendo-asp.net-mvc
4个回答
5
投票

您需要获取 window 对象,设置其

url
并将查询字符串传递给 url 属性。这对我有用:

        var window = $("#Details").data("kendoWindow");
        window.refresh({
            url: '/YourController/YourAction/......',

        });
        window.open().center();

此外,您还可以将一些数据传递给

action

        window.refresh({
            url: '/YourController/YourAction/......',
            data: { id: 10, enterpriseId: 88}

        });

或者你可以有一个函数来动态创建窗口并使用一些参数设置它的内容 url:

    function createKendoWindow(contentUrl) {
        $(document.body).append('<div id="Window"></div>');
        $('#Window').kendoWindow({
            title: "Log In",
            modal: true,
            resizable: false,
            width: 400,
            content: contentUrl,
            visible: false,
            minHeight: 350,
            animation: {
                open: {
                    effects: "expandVertical",
                    duration: 1000
                },
            },
            close: function () {
                setTimeout(function () {
                    $('#Window').kendoWindow('destroy');
                }, 200);
            }
        }).html('<img src="761.gif" />').data('kendoWindow').center().open();
    }

2
投票

你可以试试这个:

   $("#yourbuttonID").bind("click", function() {
       $("#Details").data("kendoWindow").open();
   });

加载要使用的内容:

@(Html.Kendo().Window().Name("Details")
    .Title("Customer Details")
    .Visible(false)
    .Modal(true)
    .Draggable(true)
    .LoadContentFrom("brand", "edit") 
    .Width(300)
)

0
投票

您可以使用LoadContentFrom并指定Action和Controller。该操作将附加其自己的视图。详情请参阅此处


0
投票

也可以使用window.setOptions()方法动态设置url。如果您不希望立即加载内容或需要指定更多选项,则很有用。

var window = $("#Details").data("kendoWindow");
window.setOptions({
  content: { url: '/YourController/YourAction/......' },
});
// do other stuff...
window.refresh().open();

url 属性在 content 对象中设置: 窗口内容配置选项

© www.soinside.com 2019 - 2024. All rights reserved.