绑定事件处理程序未触发模式对话框按钮单击

时间:2014-10-18 16:54:50

标签: jquery asp.net-mvc-4 modal-dialog

我有一个场景对我来说听起来就像这个SO post以及其他有类似问题的人......只是我不理解别人从这些帖子中得到了什么,因为我的实现部分失败了

基本上我有一个页面,上面有一个用于添加新记录的按钮。单击“添加”按钮,将打开一个模态对话框。模态对话框是与父页面不同的视图,当然还有创建记录所需的字段。

单击保存(记住保存是模式上的一个按钮,我希望我的保存事件可以触发,但它永远不会...也不会在开发工具或提琴手中报告任何错误。这是启动模式的代码和在评论中你会看到我有多远。

$(document).ready(function ()
{
    $("#new").click(function (e) //attach new button works great
    {
        e.preventDefault(); //seems to work
        var ischanging = false; //hard coded vars for testing
        var financierid = 0;

        var detailsWindow = $("#window").data("kendoWindow");//handle if existing window

        if (!detailsWindow)
        {
            // create a new window, if there is none on the page
            detailsWindow = $("#window")
                // set its content to 'loading...' until the partial is loaded
                .html("Loading...")
                .kendoWindow(
                    {
                        ....removed options for brevity
                    })
                .data().kendoWindow.bind('refresh', function (e)//attach refresh
                {
                    alert('bound'); //this alert displays after modal loads
                    $('#save').click(function (event)
                    {
                        alert('dqewewr'); 
                        //this alert never fires nor anything subsequent

                        event.preventDefault();
                        // take over and perform ajax post

                        alert('parent');

                        $.ajax(
                        {
                            type: "POST",
                            url: "@Html.Raw(Url.Action("CreateEdit", "Finance"))",
                            data: $(this).serialize(),
                            success: function (data) {
                            //here we check if called resulted in Success/Failure
                            if (data.Result === "Success") 
                               {
                                    alert('Finis');
                                }
                                else {
                                    //Show error message or whatever.
                                }
                            }
                        })
                    });
                }).center();
        }

        detailsWindow.open();


    });
});

我的模式是包装在表单标记中...如果我使用ajax帖子,我认为我不需要它吗?

<span id="save" class="k-button" style="margin-right:10px;">Save</span>

最后只是为了确保我很清楚。我的父页面是Configure.cshtml,我的模态是CreateEdit.cshtml ....换句话说,当生成模态时,我们点击控制器执行它的工作然后返回相应填充模型的CreateEdit视图。

这让我整个星期都感到沮丧,虽然我已经能够处理其他项目,但我现在正处于这个任务完成之前的最后一件事。

非常感谢您的帮助。


Stephen Muecke ......如果你看到这个改变你的评论要回答,我会标记这就是为我解决问题的原因。

0 个答案:

没有答案