// -------------------------------------------------------------
// 重写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 + ")");
}
}

  

JS重写alert,保证弹窗错误的友好性的更多相关文章

  1. js重写alert()弹窗

    //重写alertwindow.alert = function(str){ var alertFram = document.getElementById('alertFram'); var shi ...

  2. JS 重写alert,使之能输出多个参数

    windows._alert = windows.alert; windows.alert = function(){ _alert = (Array.prototype.slice(argument ...

  3. js 重写alert 兼容iphone使得alert 不带src

    <script> window.alert = function(name){ var iframe = document.createElement("IFRAME" ...

  4. [Winform]Cefsharp重写alert与confirm弹窗

    摘要 在使用winform内嵌cefsharp浏览本地页面的时候,如果出现alert弹窗,会在标题栏显示页面所在目录.所以想起来重写alert的样式,通过winform的MessageBox进行提示. ...

  5. 原生 js 模拟 alert 弹窗

    复制头部的 js 代码到你的 js 文件的任何地方,调用Chef.alert方法传入相应的参数即可并没有什么功能,只是一个提示的作用,可能样式比 alert 的弹窗好看点,css是写在js里的,只要你 ...

  6. Cef 重写alert与confirm弹窗

    在使用form内嵌cef浏览本地页面的时候,如果出现alert弹窗,会在标题栏显示页面所在目录.所以想起来重写alert的样式,通过MessageBox进行提示,或者自己写一个弹窗. 以下代码基于 3 ...

  7. 修改js confirm alert 提示框文字的简单实例

    修改js confirm alert 提示框文字的简单实例: <!DOCTYPE html> <html> <head lang="en"> & ...

  8. jquery.validate 以alert方式显示错误方法

    $.validator.setDefaults({ submitHandler: function() { alert("submitted!");return false; } ...

  9. 运行js提示库没有注册错误8002801d的解决办法

    运行js提示库没有注册错误8002801d的解决办法这个错误主要是因为服务器上的windows scripts版本较低,请按下面的链接下载较高版本windows scripts 5.6并在服务器上进行 ...

随机推荐

  1. 计算运行时间工具timeit

    Table of Contents 1. timeit的功能和用法 2. 其它 3. 参考资料 timeit的功能和用法 timeit 模块提供了测试一小段代码运行时间的功能.我前面有一篇文章用它来测 ...

  2. C# 之 反射

    一.反射的定义: 审查元数据并收集关於它的类型信息的能力,元数据(编辑后的基本数据单元)就是一大堆表,编译器会创建一个类定义表,一个字段定义表,一个方法定义表等, System.Reflection ...

  3. oc中的block

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

  4. Android(java)学习笔记63:线程的优先级

    1. Java线程的优先级从1到10级别,值越大优先级越高线程默认优先级是5.值越大优先级越高 (1) 继承自Thread类创建线程类: package cn.itcast_04; public cl ...

  5. 【Android Api 翻译3】android api 完整翻译之Application Fundamentals (学习android必须知道的)

    Android应用程序是用Java编程语言编写的.Android SDK工具把应用程序的代码.数据和资源文件一起编译到一个Android程序包中(这个程序包是以.apk为后缀的归档文件),一个Andr ...

  6. Chrome隐身模式有什么用

    最近发布的Chrome浏览器,小编发现有一个个“隐身窗口”功能,那么这是什么功能呢?原来这是Chrome隐身模式!那么这个隐身模式有什么功能呢? Chrome隐身模式有什么用? 从官方的介绍来看,“隐 ...

  7. VMware 命令行下的网络配置

    一般我们会在windows操作系统上安装VMware虚拟机,然后在虚拟机中安装Linux或Unix系统,但是我们很多人习惯了Windows系统的图形界面,换到Linux或Unix系统下不知道怎么配置网 ...

  8. LeetCode 287

    Find the Duplicate Number Given an array nums containing n + 1 integers where each integer is betwee ...

  9. hdu 4411 最小费用流

    思路:主要就是要把一个每个城市拆为两个点,建一条容量为1,费用为-inf的边,保证每个城市都会被遍历. /*最小费用最大流*/ #include<iostream> #include< ...

  10. selenium判断元素类型

    在做级联的下拉框时发现第一次选择了下拉框(如省份),第二个下拉框可能是输入框,也可能是下拉框,这个时候就需要判断他的元素类型,来做判断 图1 图2 原理很简单:获取控件的html文件内容,拿到内容后在 ...