Как передать объект из сетки кендо в окно кендо в MVC - PullRequest
0 голосов
/ 22 сентября 2018

Как передать объект выбранной строки из сетки в окно при нажатии кнопки события сетки

.

<script>

function editItem(e) {
    e.preventDefault();
    var selectedObj= this.dataItem($(e.currentTarget).closest("tr"));
    //selectedObj is object selected by user


       var myWin = $("#windowstatus").kendoWindow({
        width: "450px",
        height: "250px",


        title: "Some Title",
        content: {
            url: "../SomeURL", //controller name
            data: { selectedObj } //passing obj to mvc controller
        }

    });
    myWin.data("kendoWindow").open();
    return false;
}
</script>

My ActionResult

public class XXX: Controller
    {

        public ActionResult Index(MyClass obj)
        {
            // Do Something
        }
    }

Я не могу получить объект в контроллере MVC и всегда быть нулевым

1 Ответ

0 голосов
/ 10 октября 2018
    var grid = $("#grid").data("kendoGrid");
                var selectedItem = grid.dataItem(grid.select());

                if (selectedItem != null && selectedItem != "" && selectedItem != undefined) 
                {
                    var wOptions =
                        {
                            content: "/xx/XxController/Index/" + selectedItem.Id//
If you have the parameter,
                            iframe: true,
                            modal: true,
                            width: "50%",
                            height: "90%",
                            close: function () {
                                this.destroy();
                                $('body').addClass('non-overflow');
                            },
                            open: function () {
                                this.center();
                            }
                        };
                    var windowParent = windowParent == undefined ? "list-splitter" : windowParent;
                    $("#" + windowParent).append("<div id='printWindow'> </div>")
                    $("#printWindow").kendoWindow(wOptions);
                }

Следующий блок кода также вызывает метод окна js

 window: function (url, params, windowParent) {

            var wOptions = {
                content: url + "/?frameFilter=" + params,
                iframe: true,
                modal: true,
                width: "90%",
                height: "90%",
                close: function () {
                    this.destroy();
                    $('body').addClass('non-overflow');
                },
                open: function () {
                    this.center();
                }
            };
            windowParent = windowParent == undefined ? "pop-splitter" : windowParent;
            $("#" + windowParent).append("<div id='popupWindow'> </div>")
            $("#popupWindow").kendoWindow(wOptions);
        },

Надеюсь, это поможет

...