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

时间:2013-06-24 17:38:26

标签: asp.net-mvc kendo-ui kendo-asp.net-mvc

我是kendo ui的首发,我想使用kendoUi窗口,但我有一些使用问题我为创建窗口编写此代码

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

我有一些按钮,我希望当用户使用jquery动态点击其中一个按钮设置LoadContentFrom时。但我不知道该怎么做。请帮我。谢谢大家。

3 个答案:

答案 0 :(得分:4)

您需要获取窗口对象,设置其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}

        });

或者你只是有一个函数来动态创建窗口并使用一些参数设置它的内容网址:

    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();
    }

答案 1 :(得分:2)

你可以试试这个

   $("#youbuttonID").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)

答案 2 :(得分:0)

您可以使用LoadContentFrom并指定Action和Controller。该操作将附加自己的视图。有关详细信息,请参阅here