// -------------------------------------------------------------
// 重写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. FITS 基本格式及其扩展

    一.FITS 一般介绍二.FITS 的一般结构三.FITS 基本格式四.FITS 的随机组扩展五.FITS 的表扩展 (ASCII 表扩展)六.FITS 的一般扩展和块因子参考文献 FITS 基本格式 ...

  2. nginx的监控配置

    最近在弄性能,在性能过程中需要监控nginx的一些配置,这里简单的搭建了环境 //下载nginx  根据自己的版本 wget http://nginx.org/download/nginx-1.6.0 ...

  3. C#获取进程的主窗口句柄的实现方法

    通过调用Win32 API实现. public class User32API { private static Hashtable processWnd = null; public delegat ...

  4. Wcf 之 配置文件解析

    在WCF Service Configuration Editor的使用中,我们通过配置工具自动生成了WCF服务端的config文件.现在我们来看下这个配置文件各个标签的意义(解释在下面xml文件中的 ...

  5. SQL Server三种表连接原理

    在SQL Server数据库中,查询优化器在处理表连接时,通常会使用一下三种连接方式: 嵌套循环连接(Nested Loop Join) 合并连接 (Merge Join) Hash连接 (Hash ...

  6. solrj-solr Guide 4.7

    solrj是一个很容易使java应用程序和solr进行交互的一个API,solrj隐藏了很多连接Solr的细节,允许你的应用程序使用简单的高级方法和solr互动交流. solrj的核心就是 org.a ...

  7. 通过布赛尔曲线以及CAShapeLayer的strokeStart 、strokeEnd 属性来实现一个圆形进度条

    #import <UIKit/UIKit.h> @interface CircleProgressView : UIView /**起始值(0-1)*/ @property(nonatom ...

  8. 重构25-Introduce Design By Contract checks(契约式设计)

    契约式设计(DBC,Design By Contract)定义了方法应该包含输入和输出验证.因此,可以确保所有的工作都是基于可用的数据,并且所有的行为都是可预料的.否则,将返回异常或错误并在方法中进行 ...

  9. 【VMware虚拟化解决方案】 基于VMware虚拟化平台VDI整体性能分析与优化

    一.说一说 本来打算将前期项目里面出现的问题的分析思路与解决方法写出来,第一.疏导一下自己的思路,第二.分析并找出自身在技术层面所存在欠缺.但由于每个人都有一根懒经所以迟迟未动.今天突然发现51CTO ...

  10. codeforces 680B B. Bear and Finding Criminals(水题)

    题目链接: B. Bear and Finding Criminals //#include <bits/stdc++.h> #include <vector> #includ ...