• DWZ 自定义异常及后台校验2-a链接弹出框


    a 链接弹出框 后台抛出异常直接提示自定义信息 并关闭dialog

    a 链接中的target属性 target="dialog"  ,在使用a链接做弹出层业务的时候使用dialog属性值,弹出层之前业务中需要做一些可操作验证,

    抛出自定义异常信息,新增target属性值 target="dialogMsg"  dwz.ui.js 中扩展一个函数,当target的属性值使用dialogMsg的时候,

    后台抛出的异常信息就会经过该函数进行处理,并弹出提示信息。

    1.dwz.ui.js 扩展 dialogMsg

    //dialogMsg 弹出框后台抛出自定义异常
        $("a[target=dialogMsg]", $p).each(function(){
            $(this).click(function(event){
                var $this = $(this);
                .......
    ..............省略................
    .......
    DWZ.debug(url); if (!url.isFinishedTm()) { alertMsg.info($this.attr("warn") || DWZ.msg("alertSelectMsg")); return false; } //扩展openMsg $.pdialog.openMsg(url, rel, title, options); return false; }); });

    2.dwz.dialog.js 扩展 openMsg

    //打开一个可返回自定义异常信息的层
            openMsg:function(url, dlgid, title, options) {
                var op = $.extend({},$.pdialog._op, options);
                var dialog = $("body").data(dlgid);
                //重复打开一个层
                if(dialog) {
                    if(dialog.is(":hidden")) {
                        dialog.show();
                    }
                    if(op.fresh || url != $(dialog).data("url")){
                        dialog.data("url",url);
                        dialog.find(".dialogHeader").find("h1").html(title);
                        this.switchDialog(dialog);
                        var jDContent = dialog.find(".dialogContent");
                        jDContent.loadUrlMsg(url, dlgid,{}, function(){
                            jDContent.find("[layoutH]").layoutH(jDContent);
                            $(".pageContent", dialog).width($(dialog).width()-14);
                            $("button.close").click(function(){
                                $.pdialog.close(dialog);
                                return false;
                            });
                        });
                    }
    
                } else { //打开一个全新的层
    
                  .............//load data
                    var jDContent = $(".dialogContent",dialog);
                    jDContent.loadUrlMsg(url,dlgid,{}, function(){
                        jDContent.find("[layoutH]").layoutH(jDContent);
                        $(".pageContent", dialog).width($(dialog).width()-14);
                        $("button.close").click(function(){
                            $.pdialog.close(dialog);
                            return false;
                        });
                    });
                }
                ......................
            },

    3.dwz.core.js 扩展 loadUrlMsg、 ajaxUrlMsg

    loadUrlMsg: function(url,dlgid,data,callback){
            //dlgid 是当前层标识rel的属性值 $(
    this).ajaxUrlMsg({url:url,dlgid:dlgid, data:data, callback:callback}); }, ajaxUrlMsg: function(op){ var $this = $(this); $this.trigger(DWZ.eventType.pageClear); $.ajax({ type: op.type || 'GET', url: op.url, data: op.data, cache: false, success: function(response){ ......... }, error: function(response){
                //response.responseText 获取异常的文本信息 alertMsg.error(response.responseText, {okCall:
    function(){
                     //关闭当前弹出层 $.pdialog.close(op.dlgid);
    return false
    ; }}) }, statusCode: { 503: function(xhr, ajaxOptions, thrownError) { alert(DWZ.msg("statusCode_503") || thrownError); } } }); },
  • 相关阅读:
    常用的字符集编码
    live555—VS2010/VS2013 下live555编译、使用及测试(转载)
    win32下Socket编程(转载)
    do{...}while(0)的意义和用法(转载)
    C++ static与单例模式
    MFC多线程各种线程用法 .
    a^1+b problem
    重返现世——题解
    第K大C
    懒癌
  • 原文地址:https://www.cnblogs.com/smokerBig/p/13280181.html
Copyright © 2020-2023  润新知