JS重寫alert,保證彈窗錯誤的友好性


// -------------------------------------------------------------
// 重寫alert,保證彈窗錯誤的友好性
var j_oldAlert = window.alert;
var j_fieldList;
window.alert = function (msg) {
    var newMsg = "";
    msg = msg.toLowerCase(); //轉為小寫
    // 唯一性驗證
    if (msg.indexOf("ora-00001") > -1) {
        for (var i = 0; i < j_fieldList.length; i++) {
            var r = j_fieldList[i];
            if (r.type == 'uk' && msg.indexOf(r.name.toLowerCase()) > -1) {
                if (r.msg != undefined && r.msg.length > 0) {
                    newMsg += r.msg;
                } 
                break;
            }
        }
        newMsg = "違反唯一約束!\r\n" + newMsg;
    } else {
        newMsg = msg;
    }

    j_oldAlert(newMsg);
}

/* 
var json = [{
    type: 'uk',
    name: 'UK$MA_GROUPDATATABLE$1',
    msg: ''
}];
type 約束的類型,uk唯一性約束、;name 為數據庫中約束的名稱;msg為自定義的提示語
initAlert(json);
*/
// 初始化alert彈窗所需要的參數
function initAlert(json) {
    if (typeof (json) == "object" && json.length > 0) { // 驗證數據是否為json格式
        j_fieldList = json;
    } else {
        j_fieldList = eval("(" + json + ")");
    }
}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM