如何手动关闭 Kendoui 弹出窗口

Cod*_*der 1 asp.net-mvc jquery asp.net-mvc-4 kendo-ui kendo-asp.net-mvc

我正在使用kendo-ui带有asp.net MVC. 我有两种不同的看法。

edituser.cshtml
changepasssword.cshtml
Run Code Online (Sandbox Code Playgroud)

当用户从 edituser 页面单击更改密码按钮时,它会弹出 ChangePassword 页面。这个页面有自己的保存按钮。我想在更改密码后关闭保存按钮上的弹出窗口。

EditUser.cshtml 的代码:

<div id="winUserInfo" style="display: none; overflow: hidden;"></div>

  var winUserInfo = $('#winUserInfo');

if (!winUserInfo.data('kendoWindow')) {
    winUserInfo.kendoWindow({
        width: 400,
        height: 140,
        title: 'Change Password',
        modal: true,
        iframe: true
    })
    }


   $('#btnChangePwd').click(function (e) {
    e.preventDefault();

    var w = winUserInfo.data('kendoWindow');

    w.refresh({
        url: '/tools/ChangePassword/?loginID=@(Model.LoginID)'
    }).open().center();
});
Run Code Online (Sandbox Code Playgroud)

ChangePassword.cshtml 的代码:

    <div style="padding: 10px;">
<table class="data-form">

    <tr>
        <td style="text-align: right;"><label>New Password</label></td>
        <td><input id="txtPassword1" class="required" type="password" style="width: 200px;" /></td>
    </tr>
    <tr>
        <td style="text-align: right;"><label>Re-type New Password</label></td>
        <td><input id="txtPassword2" class="required" type="password" style="width: 200px;" /></td>
    </tr>
</table>
<div style="padding-top: 15px;">
    @*<button id="btnClose" class="k-button" onclick="javascript:window.close();">Close</button>*@
    <button id="btnSaveCP" class="k-button"">Save</button>
    <span id="loader"></span>
    <label id="lblMessage" style="display: none; color: green;"></label>
</div>
Run Code Online (Sandbox Code Playgroud)

   <script type="text/javascript">
    $('#btnSaveCP').click(function () {
    var d = JSON.stringify({
        password1: $('#txtPassword1').val(),
        password2: $('#txtPassword2').val(),
        loginID: '@(ViewBag.LoginID)'
    });

    nf.control.disable($('.k-button'));
    nf.progress.start($('#loader'));

    $('#lblMessage').hide();

    nf.ajax(
        "/Users/ChangePassword",
        d,
        function (e) {
            nf.control.enable($(".k-button"));
            nf.progress.stop($('#loader'));

            if (e.HasError) {
                nf.msgBox.error(e.ErrorMessage);
                return;
            }

            $('#lblMessage').html('Password has been changed').show();
            $('#txtPassword1').val('');
            $('#txtPassword2').val('');

        },
        function (e) {
            nf.control.enable($(".k-button"));
            nf.progress.stop($('#loader'));
            nf.msgBox.ajaxError(e);
        }
    );
});

$(function () {
    $('#txtPassword1').focus();
});
Run Code Online (Sandbox Code Playgroud)

我想点击弹出窗口中的保存按钮关闭弹出窗口(changepassword.cshtml)

谢谢

SBi*_*are 6

当您要关闭弹出窗口时,请在单击“保存”按钮上写下以下内容:

$("#winUserInfo").data("kendoWindow").close();
Run Code Online (Sandbox Code Playgroud)