JqueryUI Dialog 加载动态页 部分页

问题:使用JqueryUIDialog 加载部分页,可以弹出对话框,但是在操作页面上的按钮是提示"dialog"找不到,思路是,先取到部分页加载到要dialog的Div上,在dialog出来,代码如下,

问题代码:

  $("#PushAisburse").click(function () {



        $.get("PushAisburse").success(function (data) {



            $("#dialog-form").append(data).dialog({



                modal: true,

                buttons: {

                    "增加": function () {

                        //初始化提交

                        var fromdata = $("#addfrom").serialize();

                        $.post("PushAisburse", fromdata);

                    },

                    "取消": function () {

                        $(this).dialog("close");

                    }

                },

                close: function () {

                    $("#addfrom").remove();

                }

            });



        }).error(function () {

            $("<div></div>").attr("id", "msg").append("<p class ='.text-error'>打开添加收入记录失败!</p>").appendTo("body").dialog();

        });







    });

解决:

测试后分析生成的HTML 发现是加载部分页的问题, 如果用以上代码加载页面上的HTML代码可以正常操作,但是加载部分页就会有Bug,改成dialog弹出时加载部分页Bug消失

正常代码如下:

 $("#PushAisburse").click(function () {

        

        $("#dialog-form").dialog({

            modal: true,

            buttons: {

                "增加": function () {

                    //初始化提交

                    var fromdata = $("#dialog-form").serialize();

                    $.post("PushAisburse", fromdata);

                },

                "取消": function () {

                    $(this).dialog("close");

                }

            },

            open: function () {

                $.get("PushAisburse").success(function (data) {

                    $("#dialog-form").append(data);

                }).error(function () {

                    $("#dialog-form").append("<p class ='.text-error'>打开添加收入记录失败!</p>");

                });

            }

        }); 

    });

还有一个经常性的错误: 被加载的部分页中不能有和加载到body页面中有同样的引用文件,会导致引用文件冲突,导致,dialog只显示一次,关闭dialog后就打不开了,dialog 方法找不到,

修改冲突文件就可以正常操作

 

你可能感兴趣的:(JqueryUI)