上一篇:http://topic.csdn.net/u/20110619/21/26a9a882-9aa1-4888-9ed5-729a8234fca0.htmlJSHelper.js
Type.registerNamespace("JSHelper");JSHelper.ErrString = "";JSHelper.Assert = function (bCondition, sErrMsg) {
    if (!bCondition) {JSHelper.ThrowError(sErrMsg);}
    }JSHelper.KillException = function(sMsg,sUrl,sLine) {
var _br = "\n" 
    if(JSHelper.ErrString==""){
        var _s="异常信息:" + sMsg + _br; 
        _s+=(sUrl!="")?("文件名称:" + sUrl + _br):"" ;
        _s+="行号:" + sLine + _br ; 
        var _func = window.onerror.caller;
        if(_func){_s+=_func;}
        JSHelper.ErrString=_s;
        }
    if($get('btnShowException')){JSHelper.DisplayControl("btnShowException",true); }
if($get('btnClearException')){JSHelper.DisplayControl("btnClearException",true);}
    return true;
    }JSHelper.ThrowError = function(sMsg){
    if(JSHelper.ErrString==""){
        JSHelper.ErrString = sMsg;
        throw new Error(JSHelper.ErrString);
        }   
    }JSHelper.ToString = function(oVal){
var _s = "";
try {
if (oVal) {var _s = oVal.toString().trim();}
return _s;

catch (e) {_s = "";}
finally {return _s;}
}JSHelper.ToInt = function(oVal){
var _i = 0;
var _s = JSHelper.ToString(oVal);
try {
_i = parseInt(_s, 10);

catch (e) {_i = 0;}
finally {return _i;}
}JSHelper.DisplayControl = function(sControlId,bStatus){
var _Status = bStatus?"block":"none";
var _btnShowException = $get(sControlId);
if(_btnShowException){ _btnShowException.style.display = _Status;}
else{JSHelper.ThrowError("控件"+sControlId + "不存在"); }
    }window.onerror = JSHelper.KillException;