//=============================================
//建立日期：2004年3月25日
//作者：杜保发@东南融通
//功能概述：通用函数集，供系统全局调用
//调用方法：在调用文件头引入即可，如下：
//<head>
//<script src="/js/util.js" ></script>
//</head>
//=============================================
//==========================================
//功能: 去掉字符左边的空格
//输入参数:要格式化的字符串
//返回值:去掉左边空格的字符串
//调用方法
//==========================================
function ltrim(str)
{
    if (str==null)  return null;
    var s="";
    for (var i=0;i<str.length;i++)
    {
        if (str.charAt(i)!=" ")
        {
            s=str.substr(i);
            break;
        }
    }
    return s;
}

//==========================================
//功能: 去掉字符右边的空格
//输入参数:要格式化的字符串
//返回值:去掉右边空格的字符串
//调用方法
//==========================================
function rtrim(str)
{
    if (str==null)   return null;
    var s="";
    for (var i=str.length-1;i>=0;i--)
    {
        if (str.charAt(i)!=" ")
        {
            s=str.substring(0,i+1);
            break;
        }
    }
    return s;
}

//==========================================
//功能: 去掉字符左右边的空格
//输入参数:要格式化的字符串
//返回值:去掉左右边空格的字符串
//调用方法
//==========================================

function trim(str)
{
	return(ltrim(rtrim(str)));
}

//==========================================
//功能: 字符转为大写
//输入参数:无
//返回值:空
//调用方法:在文本控件里onkeydown="jsUpperCase();"
//==========================================
function jsUpperCase()
{
	if ((window.event.keyCode>=97) && (window.event.keyCode<=122))
	window.event.keyCode = window.event.keyCode-32;
}

//==========================================
//功能: 把输入的字符转为大写
//输入参数:当前对象
//返回值:空
//调用方法:在文本控件里onblur="toUpperCase(this);"
//==========================================
function toJsUpperCase(obj)
{
    try {
        var s = obj.value;
        if (trim(s) == "") return;
        obj.value = s.toUpperCase();
	} catch(e) {
	}
}

//==========================================
//功能: 把输入的字符转为小写
//输入参数:无
//返回值:空
//调用方法:在文本控件里onkeydown="jsLowerCase();"
//==========================================
function jsLowerCase()
{
	if ((window.event.keyCode>=65) && (window.event.keyCode<=90))
		window.event.keyCode = window.event.keyCode+32;
}

//==========================================
//功能: 把输入的字符转为小写
//输入参数:当前对象
//返回值:空
//调用方法:在文本控件里onblur="toJsLowerCase(this);"
//==========================================
function toJsLowerCase(obj)
{
	var s = obj.value;
	if (trim(s) == "") return;
	obj.value = s.toLowerCase();
}
//==========================================
//功能: 只能输入数字
//输入参数:
//obj:输入域对象
//symbol:输入符号，有"-","."两种，用","分开
//返回值:空
//调用方法:在文本控件里onkeypress="typeNumber(this,'.,-');"
//==========================================
function typeNumber(obj,symbol)
{
    var str = trim(obj.value);
    var bDot = false;
    var bNega = false;
    if (typeof(symbol) == 'undefined') symbol = "";
    bDot =  (symbol.indexOf(".")>=0?true:false);
    bNega =  (symbol.indexOf("-")>=0?true:false);
    if (bNega)  //允许输入负号
    {
		//只能第一位为负号
		if (str.length>0 && window.event.keyCode == 45)
		{
            window.event.returnValue = false;
            return;
		}

		//只能输入一个负号
        if (str.indexOf("-")>=0 && window.event.keyCode == 45)
        {
            window.event.returnValue = false;
            return;
        }
    }

    if (bDot)  //允许输入小数点
    {
		//只能输入一个小数点
        if (str.indexOf(".")>=0 && window.event.keyCode == 46)
        {
            window.event.returnValue = false;
            return;
        }
    }

	if (window.event.keyCode<48 || window.event.keyCode>57)
	{
		if ((bDot && window.event.keyCode == 46) || (bNega && window.event.keyCode == 45))
		{
			return;
		}
		window.event.returnValue = false;
	}
}

//==========================================
//功能: 只能输入整数
//输入参数:negative 是否允许输入负数，true:允许输入负数，false:不允许，默认:false
//返回值:空
//调用方法:在文本控件里onkeypress="typeInteger(this,false);"
//==========================================
function typeInteger(obj,negative)
{
    if (typeof(negative) == 'undefined')  negative = false;
    typeNumber(obj,(negative==true?"-":""));
}

//==========================================
//功能: 只能输入浮点数
//参数:
//obj，输入域对象
//negative:是否允许输入负数，true:允许输入负数，false:不允许，默认:false
//返回值:空
//调用方法:在文本控件里onkeypress="typeFloat(this,false);"
//==========================================
function typeFloat(obj,negative)
{
   if (typeof(negative) == 'undefined')  negative = false;
   typeNumber(obj,(negative==true?"-,.":"."));
}

//==========================================
//功能: 只能输入整数
//参数:当前对象
//返回值:boolean
//调用方法:在文本控件里onblur="verifyInteger(this);"
//==========================================
function verifyInteger(obj,negative)
{
    if (typeof(negative) == 'undefined')  negative = false;
    verifyNumber(obj,(negative==true?"-":""));
}

//==========================================
//功能: 只能输入浮点数
//参数:当前对象
//返回值:boolean
//调用方法:在文本控件里onblur="verifyFloat(this);"
//==========================================
function verifyFloat(obj,negative)
{
    if (typeof(negative) == 'undefined')  negative = false;
    verifyNumber(obj,(negative==true?"-,.":"."));
}

//==========================================
//功能: 只能输入有效数字
//参数:
//obj:输入域对象
//symbol:输入符号，有"-","."两种，用","分开
//返回值:boolean
//调用方法:在文本控件里onblur="verifyNumber(this,'-,.');"
//==========================================
function verifyNumber(obj,symbol)
{
    var bDot = false;
    var bNega = false;
    if (typeof(symbol) == 'undefined') symbol = "";
    bDot =   (symbol.indexOf(".")>=0?true:false);
    bNega =  (symbol.indexOf("-")>=0?true:false);
    var piece =  (bNega==false?"正":"")+(bDot == true?"浮点数":"整数")
    var errInfo = "不是有效"+piece+"！\n\n请重新输入！";
    var str = trim(obj.value);
    if (str == "") return true;
	try
	{
		if (!isNumber(str,symbol))
		{
			alert("\"" + str + "\""+errInfo);
			obj.value="";
			obj.focus();
			return false;
		}
	}
	catch (e)
	{
		alert("\"" + str + "\""+errInfo);
		obj.value="";
		obj.focus();
		return false;
	}
	return true;
}

//==========================================
//功能: 验证是否为有效数字，允许用科学计数法，即包含字母E
//str:传入的字符串
//symbol:输入符号，有"-","."两种，用","分开
//返回值:boolean
//调用方法:"
//==========================================

function isNumber(str,symbol)
{
    var bDot = false;
    var bNega = false;
    if (typeof(symbol) == 'undefined') symbol = "";
    bDot =   (symbol.indexOf(".")>=0?true:false);
    bNega =  (symbol.indexOf("-")>=0?true:false);
	var bFlag = true;
	for(var i=0;i<str.length;i++)
	{
		if (str.charCodeAt(i)<48 || str.charCodeAt(i) >57)
		{
		    if (bDot  && str.charCodeAt(i)==46) continue;
		    if (bNega && str.charCodeAt(i)==45 && i==0) continue;
		    if (str.charCodeAt(i) == 69) continue; //字母 E,科学计数表示法
			bFlag = false;
			break;
		}
	}
	return bFlag;
}
//==========================================
//Purpose:把字符串转化为整数
//参数:s--要转化为整数的字符串
//返回值:转化后的整数
//说明：JavaScript自带的函数对于处理数字字符串前带0或为0的有误，
//如使用parseInt("0025")返回的并不是25，而是21,又如parseInt("0")返回并不是0，而是NaN
//下面的自定义函数可以处理这一Bug
//调用方法:
//==========================================

function parseMyInt(s)
{
	var str = trim(s)
	  if (str == "") return 0;
	  try
	  {
		  for (var i=0;i<str.length;i++)
		  {
			 if (str.charAt(0) != '0')
				break;
			 else
				str = str.substring(1,str.length);
		  }
		 if (str == "")
			 return 0;
		 else
			return parseInt(str);

	  }
	  catch (e)
	  {
		return 0;
	  }
}

function isDigit(s) {
	var str = trim(s);
	if (str == "")
	{
		return false;
	}
	for (var i=0;i<str.length;i++)
	{
		if (isNaN(str.charAt(i)))  //isNaN为真表示不是数字
		{
			return false;
		}
	}
	return true;
}

function mouseout(obj)
{
   try
    {
        obj.borderColorDark  = "transparent";
        obj.borderColorLight = "transparent";
        obj.bgColor = "transparent";
		//document.getElementById(obj.id).borderColorDark ="buttonface";
		//document.getElementById(obj.id).borderColorLight="buttonface";
	 }
	catch(e)
	{
	//Here do something when ocurring error
	}
}

function mouseover(obj)
{
   try
    {
        //alert(obj.id);
        obj.borderColorDark  = "#182474";
        obj.borderColorLight = "#182474";
        obj.bgColor = "#ccccff";
		////document.getElementById(obj.id).borderColorDark ="white";
		//document.getElementById(obj.id).borderColorLight="buttonshadow";
	}
	catch(e)
	{
	//Here do something when ocurring error
	}

}

function mousedown(obj)
{
	try
	{
		//document.getElementById(obj.id).borderColorDark ="buttonshadow";
		//document.getElementById(obj.id).borderColorLight="white";
	}
	catch(e)
	{
	//Here do something when ocurring error
	}

}

function mouseup(obj)
{
	try
	{
		//document.getElementById(obj.id).borderColorDark ="white";
		//document.getElementById(obj.id).borderColorLight="buttonshadow";
	}
	catch(e)
	{
	//Here do something when ocurring error
	}

}

//=================================================================================
//功能: 根据存储值列表和显示值列表动态生成下拉列表
//@param: subSelectName，动态下拉列表的名称
//@param: currValue，下拉列表的当前值
//@param: valueList，用来生成动态下拉列表元素的存储值列表
//@param: textList，用来生成动态下拉列表元素的显示值列表
//@param: valueDelimiter， 储值列表的分隔符，不传入时默认为","
//@param: textDelimiter， 显示值列表的分隔符，不传入时默认为","
//@param: includeEmpty， 是否为下拉列表生成第一个值为空的元素，不传入时默认为不生成。
//@return: true:动态下拉列表生成成功，反之为false
//=================================================================================

function generateSubSelect(subSelectName,currValue,valueList,textList,valueDelimiter,textDelimiter,includeEmpty)
{
    if (subSelectName == "") return false;

    try
    {
        if (typeof(valueDelimiter) == "undefined") valueDelimiter = ",";
        if (typeof(currValue) == "undefined") currValue = "";
        if (typeof(textList) == "undefined") textList = valueList;
        if (typeof(textDelimiter) == "undefined") textDelimiter = valueDelimiter;
        if (typeof(includeEmpty) == "undefined") includeEmpty = false;

        var subSelectObj = document.getElementById(subSelectName);
        for(var i=0;i<subSelectObj.length;)
        {
            subSelectObj.removeChild(subSelectObj.options[i]);
        }

		if (includeEmpty)
            subSelectObj.options.add(new Option("",""));

		if(valueList != ""){
			var a = valueList.split(valueDelimiter);
		    var b = textList.split(textDelimiter);
		    for(var i=0;i<a.length;i++)
			{
			    subSelectObj.options.add(new Option(trim(b[i]),trim(a[i])));
		    }
		}

        if (currValue != "")
        {
            subSelectObj.value = currValue;
        }
    } catch (e)
    {
        return false;
    }
    return true;
}

//=================================================================================
//功能: 根据存储值列表和显示值列表动态生成下拉列表(组合框)
//@param: comboBoxName，动态下拉列表的名称
//@param: comboBoxSn，动态下拉列表关联sn的名称
//@param: currValue，下拉列表的当前值
//@param: valueList，用来生成动态下拉列表元素的存储值列表
//@param: textList，用来生成动态下拉列表元素的显示值列表
//@param: valueDelimiter， 储值列表的分隔符，不传入时默认为","
//@param: textDelimiter， 显示值列表的分隔符，不传入时默认为","
//@return: true:动态下拉列表生成成功，反之为false
//=================================================================================

function generateComboBox(comboBoxName,comboBoxSn,currValue,valueList,textList,valueDelimiter,textDelimiter)
{
    if (comboBoxName == "") return false;

    try
    {
        if (typeof(valueDelimiter) == "undefined") valueDelimiter = ",";
        if (typeof(currValue) == "undefined") currValue = "";
        if (typeof(textList) == "undefined") textList = valueList;
        if (typeof(textDelimiter) == "undefined") textDelimiter = valueDelimiter;
        if (typeof(includeEmpty) == "undefined") includeEmpty = true;

        var comboBoxObj = document.getElementById(comboBoxName + "_sel");
        if(comboBoxObj.disabled){
        	document.getElementById(comboBoxSn).value = "";
			document.getElementById(comboBoxName).value = "";
			document.getElementById(comboBoxName).readOnly = false;
			comboBoxObj.disabled = false;
        }
        for(var i=0;i<comboBoxObj.length;)
        {
            comboBoxObj.removeChild(comboBoxObj.options[i]);
        }
        comboBoxObj.options.add(new Option("",""));

		if(valueList != ""){
			var a = valueList.split(valueDelimiter);
			var b = textList.split(textDelimiter);
		    for(var i=0;i<a.length;i++)
		    {
		        comboBoxObj.options.add(new Option(trim(b[i]),trim(a[i])));
	        }
		}

        if (currValue != "")
        {
            comboBoxObj.value = currValue;
        }

		//只有一个选项时直接选取(包括空元素为2个)
		if(comboBoxObj.length == 2){
			comboBoxObj[1].selected = true;
			document.getElementById(comboBoxSn).value = comboBoxObj[1].value;
			document.getElementById(comboBoxName).value = comboBoxObj[1].text;
			document.getElementById(comboBoxName).blur();
			document.getElementById(comboBoxName).readOnly = true;
			comboBoxObj.fireEvent("onchange");
			comboBoxObj.disabled = true;
		}
		//自动展开
		else{
			comboBoxObj.focus();
			Shell.SendKeys("%{DOWN}");
			Shell.Quit;
		}
    } catch (e)
    {
        return false;
    }
    return true;
}

//=================================================================================
//功能: 根据存储值列表和显示值列表动态生成下拉列表(生成核销单下拉列表)  add by linpengcheng 2006-6-29
//@param: comboBoxName，动态下拉列表的名称
//@param: comboBoxSn，动态下拉列表关联sn的名称
//@param: currValue，下拉列表的当前值
//@param: valueList，用来生成动态下拉列表元素的存储值列表
//@param: textList，用来生成动态下拉列表元素的显示值列表
//@param: valueDelimiter， 储值列表的分隔符，不传入时默认为","
//@param: textDelimiter， 显示值列表的分隔符，不传入时默认为","
//@return: true:动态下拉列表生成成功，反之为false
//=================================================================================

function generateCavList(comboBoxName,comboBoxSn,currValue,valueList,textList,valueDelimiter,textDelimiter)
{
    if (comboBoxName == "") return false;

    try
    {
        if (typeof(valueDelimiter) == "undefined") valueDelimiter = ",";
        if (typeof(currValue) == "undefined") currValue = "";
        if (typeof(textList) == "undefined") textList = valueList;
        if (typeof(textDelimiter) == "undefined") textDelimiter = valueDelimiter;
        if (typeof(includeEmpty) == "undefined") includeEmpty = true;

        var comboBoxObj = document.getElementById(comboBoxName + "_sel");
        if(comboBoxObj.disabled){
        	document.getElementById(comboBoxSn).value = "";
			document.getElementById(comboBoxName).value = "";
			document.getElementById(comboBoxName).readOnly = false;
			comboBoxObj.disabled = false;
        }
        for(var i=0;i<comboBoxObj.length;)
        {
            comboBoxObj.removeChild(comboBoxObj.options[i]);
        }
        comboBoxObj.options.add(new Option("",""));

		if(valueList != ""){
			var a = valueList.split(valueDelimiter);
			var b = textList.split(textDelimiter);
		    for(var i=0;i<a.length;i++)
		    {
		        comboBoxObj.options.add(new Option(trim(b[i]),trim(a[i])));
	        }
		}

        if (currValue != "")
        {
            comboBoxObj.value = currValue;
        }

		//只有一个选项时直接选取(包括空元素为2个)
		if(comboBoxObj.length == 2){
			comboBoxObj[1].selected = true;
			document.getElementById(comboBoxSn).value = comboBoxObj[1].value;
			document.getElementById(comboBoxName).value = comboBoxObj[1].text;
			document.getElementById(comboBoxName).blur();
			document.getElementById(comboBoxName).readOnly = true;
			comboBoxObj.fireEvent("onchange");
			comboBoxObj.disabled = true;
		}
		//自动展开
		else{
			comboBoxObj.focus();
			Shell.SendKeys("%{DOWN}");
			Shell.Quit;
		}
    } catch (e)
    {
        return false;
    }
    return true;
}

//=================================================================================
//功能: 清除组合框的值
//=================================================================================

function clearComboBox(comboBoxName){
	document.getElementById(comboBoxName).value = '';
	document.getElementById(comboBoxName).readOnly=false;
	document.getElementById(comboBoxName + "_sel").value='';
	document.getElementById(comboBoxName + "_sel").disabled=false;
}

//=================================================================================
//功能: 控制表单里的全部元素是否可编辑
//@param: frm，表单名字
//@param: bln，表单元素是否可编辑,false:不可编辑，true，可编辑
//@return:
//=================================================================================

function ActiveForm(frm,bln)
{
    for(var i=0;i < frm.length;i++)
    {
        if( frm.item(i).type == "checkbox" ||
            frm.item(i).type == "select-one" ||
            frm.item(i).type == "submit" ||
            frm.item(i).type == "reset" ||
            frm.item(i).type == "button" ||
            frm.item(i).type == "radio")

          frm.item(i).disabled = !bln;

        if(frm.item(i).type == "text" ||
            frm.item(i).type == "password" ||
            frm.item(i).type == "file" ||
            frm.item(i).type == "textarea")
         {
            frm.item(i).readOnly = !bln;
            frm.item(i).className = "readonly";
         }

    }
}

 function getID(target)
 {
    if (typeof(target) == 'undefined') target="";
    if (target=="")
        eval("var objDoc=document;");
    else
        eval("var objDoc="+target+".document;");
	var j= objDoc.all.length;
	var id = "";
	for(var i=0;i<j;i++)
	{
		if (objDoc.all(i).type == "radio")
		{
            if (objDoc.all(i).checked)
            {
                id = objDoc.all(i).value;
                break;
            }
        }
 		if (objDoc.all(i).type == "checkbox")
		{
            if (objDoc.all(i).checked)
            {
                id +=id==""?objDoc.all(i).value:","+objDoc.all(i).value;
            }
        }
	}
	return id;
 }

//==================================================================================
//功能: 通用查询列表弹出框控制函数
//@param: obj,接受返回值的对象列表;
//@param: url,查询列表所对应的文件
//@param: width,弹出框的宽度，默认400px;
//@param: height,弹出框的高度，默认330px;
//@param: multiRows,是否允许在弹出框列表中选取多行,"true"为允许，默认"false"
//@param: isAppend,是否在obj的值后面追加返回值还是用返回值直接覆盖原有obj的值，默认false。
//@param: paramNameList,在url后带的参数对,如paramName1=paramControlName1,paramName2=paramControlName2,...
//@return: void
//==================================================================================

function popUpList(obj,url,width,height,multiRows,isAppend,paramNameList)
{
  try
  {
        if (obj== null || obj=="")  return;
        if (typeof(paramNameList) == 'undefined') paramNameList = "";
        if (typeof(isAppend) == 'undefined') isAppend = false;
        //弹出的列表是否显示checkbox,即可选取多行
        if (typeof(multiRows) == 'undefined') multiRows = "false";

        width = width==""?"400":width;
        height = height==""?"330":height;
        var arr = new Array();
        var objArr = obj.split(",");
        var len = objArr.length;
        //是否返回多列
        arr.multiCols = len>1?"true":"false";
        arr.multiRows = multiRows;
        var sFeature="dialogWidth:"+width+"px;dialogHeight:"+height+"px;Status:0;resizable:1;help:0";
        //paramNameList 参数列表，格式：paramName1=paramControlName1,paramName2=paramControlName2,...
        if (paramNameList != "")
        {
            var paramArr = paramNameList.split(",");
            var paramControlName,paramStr,paramList;
            paramList = "";
            for(var m=0;m<paramArr.length;m++)
            {
                var paramSubArr = paramArr[m].split("=");
                paramControlName = trim(paramSubArr[1]);
                paramStr =  trim(paramSubArr[0])+"="+document.getElementById(paramControlName).value;
                paramList +=  paramList==""? paramStr : "^" + paramStr;
            }
            url += ((url.indexOf("?")==-1) ? "?" : "^") + paramList;
        }
        var result=window.showModalDialog(url,arr,sFeature);
        var oldValue = "";
        if ((typeof(result) != "undefined") && (result != ""))
        {
           if (len>1)
           {
             for(var i=0;i<len;i++)
             {
                oldValue = (isAppend?document.getElementById(objArr[i]).value:"");
                document.getElementById(objArr[i]).value = oldValue+getCellData(result,i);
             }

           } else {
               oldValue = (isAppend?document.getElementById(obj).value:"");
               document.getElementById(obj).value =oldValue +  trim(result);
               document.getElementById(obj).focus();
             }
        }
  }
  catch (e)
  {
    //alert(e);
  }
}

function getCellData(data,colIndex)
{
    if (data == "") return "";
    if (colIndex<0) return "";

    var result = "";
    var resultArr = data.split("\n");
    var rowCount = resultArr.length;
    var firstRow = resultArr[0].split("\t");
    var colCount = firstRow.length;
    if (colIndex>colCount-1) return "";
    for(var i=0;i<rowCount;i++)
    {
        var elementArr = resultArr[i].split("\t");
        result += result == ""?elementArr[colIndex]:","+elementArr[colIndex];
    }
    return result;
}

//=================================================================================
//功能: 生成指定位数的随机数字串，一般用来生成附加码
//@param: len，生成随机数字串的位数
//@return: 生成指定位数的随机数字串
//=================================================================================

function generateDigit(len)
{
	var str = "0123456789";
	var s = "";
	var intRand = 0;
	for(var i=0;i<len;i++)
	{
		intRand = Math.floor(Math.random() * 10) - 1;
		intRand = intRand<0?0:intRand;
		s += str.charAt(intRand);
	}
	return s;
}

function showCalendar(controlName,datePattern)
{

	if (controlName == null ) return;
	var arg=new Array();
	var sUrl="../js/calendar.htm"
	var sFeature="dialogWidth:234px;dialogHeight:200px;Status:0;resizable:0;help:0";
	arg.controlValue = document.getElementById(controlName).value;
	arg.datePattern = datePattern;
	var result=window.showModalDialog(sUrl,arg,sFeature);
	if (result != null || typeof(result) != 'undefined')
	{
		 document.getElementById(controlName).value = result;
	}
}


//测字符串实际长度
String.prototype.actLength = function(){
	var arr=this.match(/[^\x00-\xff]/ig);
	return this.length+(arr==null?0:arr.length);
}

//字符串左取
String.prototype.left = function(num,mode){
	if(!/\d+/.test(num))return(this);
	var str = this.substr(0,num);
	if(!mode) return str;
	var n = str.actLength() - str.length;
	num = num - parseInt(n/2);
	return this.substr(0,num);
}

//字符串右取
String.prototype.right = function(num,mode){
	if(!/\d+/.test(num))return(this);
	var str = this.substr(this.length-num);
	if(!mode) return str;
	var n = str.actLength() - str.length;
	num = num - parseInt(n/2);
	return this.substr(this.length-num);
}

//字符串包含
String.prototype.getCount = function(str,mode){
	return eval("this.match(/("+str+")/g"+(mode?"i":"")+").length");
}

function required(objName,title)
{
    try {
        var obj = document.getElementById(objName);
        if (trim(obj.value)=="")
        {
            alert(title+"不能为空！");
            obj.focus();
            return false;
        }
    } catch (e) {
        return false;
    }
    return true;
}

//added by lishujin on 2006-4-6
function lengthLimit(objName,title,len)
{
    try {
        var obj = document.getElementById(objName);
        if (trim(obj.value).actLength() > len)
        {
			alert(title+"的长度不能大于"+len+"！");
            obj.focus();
            return false;
        }
    } catch (e) {
        return false;
    }
    return true;
}

//added by lishujin on 2006-4-6
function lengthLimitN(objName,title,len)
{
    try {
        var obj = document.getElementById(objName);
        if (trim(obj.value).length > len)
        {
			alert(title+"的长度不能大于"+len+"！");
            obj.focus();
            return false;
        }
    } catch (e) {
        return false;
    }
    return true;
}

function compareDate(startDateObj,endDateObj,startDateCaption,endDateCaption)
{
    var startDate = document.getElementById(startDateObj).value;
    var endDate = document.getElementById(endDateObj).value;
    if (trim(startDate) == "" || trim(endDate) == "") return true;
    var regExp = new RegExp("-","gi");
    var intStartDate = parseInt(startDate.replace(regExp,""));
    var intEndDate = parseInt(endDate.replace(regExp,""));
    if (intEndDate<intStartDate)
    {
        alert(endDateCaption+"不能小于"+startDateCaption+"！");
        return false;
    }
    return true;
}

function compareDigit(startDigitObj,endDigitObj,startDigitCaption,endDigitCaption)
{
    var startDigit = document.getElementById(startDigitObj).value;
    var endDigit = document.getElementById(endDigitObj).value;
    if (startDigit == "" || endDigit == "") return true;
    var dblStartDigit = parseFloat(startDigit);
    var dblEndDigit = parseFloat(endDigit);
    if (dblEndDigit<dblStartDigit)
    {
        alert(endDigitCaption+"不能小于"+startDigitCaption+"！");
        return false;
    }
    return true;
}


//=================================================================================
//功能: 取得checkbox list的值
//@param: ckbName,checkbox的名称
//@param: delimeter，返回值的分隔符，默认为","
//@return: 返回由delimeter组成的checkbox的值列表
//=================================================================================

function getCheckBoxListValue(ckbName,delimeter)
{
    try {
        if (typeof(delimeter) == 'undefined') delimeter = ",";
        if (ckbName == "") return "";
        var ckbObj = document.getElementsByName(ckbName);
        var len = ckbObj.length;
        var result = "";
        for(var i=0;i<len;i++)
        {
            if (ckbObj(i).checked)
                result += result==""?ckbObj(i).value:delimeter+ckbObj(i).value;
        }
        return result;
	} catch (e) {
	 return "";
	}
}

function formatStrWidthArr(formatStr,srcArr,desArr)
{
    if (typeof(formatStr) == 'undefined' || formatStr =="") return "";
    if (typeof(srcArr) == 'undefined') return  formatStr;
    if (typeof(desArr) == 'undefined') return  formatStr;
    var srcLen = srcArr.length;
    var desLen = desArr.length;
    if (srcLen != desLen) return formatStr;
    var str = escape(formatStr);
    for(var i=0;i<srcLen;i++)
    {
       var regExp = new RegExp(escape(srcArr[i]),"gi");
       str = str.replace(regExp,escape(desArr[i]));
    }
    return  str;
}

function setProcessBarPosition(processBar,frame)
{
    try {
        var doc=document;
        if (typeof(frame) != 'undefined')  doc=frame.document;
        if (processBar)
        {
            var x = ((doc.body.clientWidth   - processBar.offsetWidth) / 2);
            var y = (((doc.body.clientHeight - processBar.offsetHeight) / 2) + doc.body.scrollTop);
            processBar.style.left = x + "px";
            processBar.style.top = y + "px";
        }
    } catch(e) {
    }
    return;
}


//显示进度条函数
function showProcessBar(frame)
{
 try {
        var processBarObj = frame.processBar;
        setProcessBarPosition(processBarObj,frame); //设置进度条在显示区域居中
        runTimer(frame); //启动秒表
        processBarObj.style.display = ""; //显示进度条
    } catch(e) {
    }
}

//隐藏进度条函数
function hideProcessBar(frame)
{
     try {
        var processBarObj = frame.processBar;
        stopTimer(frame); //停止秒表
        processBarObj.style.display = "none"; //隐藏进度条
    } catch(e) {
    }
}

// ======================以下设置进度条逝去时间（秒表）的脚本========================
var timer = null;
// nextelapse是定时时间, 为1000毫秒 ，即1秒
var nextelapse = 1000;
// 初始秒表值
var initClockText = "00:00:00";
var clockText;
// 秒表对象
var clockObj;
// 开始运行
function runTimer(iframe)
{
  clockObj  = iframe.clock;
  clockText =  initClockText;
  clockObj.innerText = clockText;
  if (timer != null)  window.clearInterval(timer);
  // 注意setInterval函数: 时间逝去nextelapse(毫秒)后, onTimer才开始执行
  timer = window.setInterval("onTimer()", nextelapse);
}

// 停止运行
function stopTimer()
{
  window.clearTimeout(timer);
}
//
function onTimer()
{
    var hms = new String(clockText).split(":");
    var s = new Number(hms[2]);
    var m = new Number(hms[1]);
    var h = new Number(hms[0]);
    s = s + 1;
    if (s==60)
    {
        s = 0;
        m = m + 1;
        if (m == 60)
        {
            m = 0;
            h = h + 1;
        }
    }
    var ss = s < 10 ? ("0" + s) : s;
    var sm = m < 10 ? ("0" + m) : m;
    var sh = h < 10 ? ("0" + h) : h;

    clockText = sh + ":" + sm + ":" + ss ;
    //alert(clockText);
    clockObj.innerText = clockText;
    // 清除上一次的定时器
    window.clearInterval(timer);
    // 启动新的定时器
    timer = window.setInterval("onTimer()", nextelapse);
}

//===================================================================

//in:date:yyyy-mm-dd
//out:yyyy年mm月dd日
function formatChineseDate(date)
{
    if (date == "") return "";
    var dateArr = date.split("-");
    var year = dateArr[0];
    var month = dateArr[1];
    var day = dateArr[2];
    return (year+"年"+parseMyInt(month)+"月"+parseMyInt(day)+"日");
}

/**
 * ?????
 * @return
 */
function FormatNumber(srcStr, nAfterDot){
	var srcStr, nAfterDot;
	var resultStr, nTen;
	strLen = srcStr.length;
	dotPos = srcStr.indexOf(".");
	if(dotPos == -1){
		resultStr = srcStr + ".";
		for(var i = 0;i < nAfterDot;i++){
			resultStr = resultStr + "0";
		}
		return resultStr;
	}
	else{
		if((strLen - dotPos - 1) > nAfterDot){
			nTen = 1;
			for(var j = 0;j < nAfterDot;j++){
				nTen = nTen * 10;
			}
			resultStr = Math.round(parseFloat(srcStr) * nTen) / nTen;
			return FormatNumber("" + resultStr + "", nAfterDot);
		}
		else{
			resultStr = srcStr;
			for (var i = 0;i < (nAfterDot - strLen + dotPos + 1);i++){
				resultStr = resultStr + "0";
			}
			return resultStr;
		}
	}
}

function processException(e){
	switch (typeof(e)){
		case "string":{
			if (e!="abort"){
				if (e)
					alert(e);
				else
					alert("未知错误！");
			}
			break;
		}

		case "object":{
			alert(e.description+"\n"+"错误类型"+":"+(e.number & 0xFFFF));
			break;
		}
	}
}

//屏蔽错误
window.onerror = function() { return false;}

//清空单选框
//Add by linpengcheng at 2006-09-15
function clearRadio(radioName){
	for (var i=0;i<document.getElementsByName(radioName).length;i++){
		document.getElementsByName(radioName)[i].checked = false;
	}
}
//判断必填的单选框
//Add by linpengcheng at 2006-09-20
function requiredRadio(objName,title)
{
	try {
		for (var i=0;i<document.getElementsByName(objName).length;i++){
			if(document.getElementsByName(objName)[i].checked == true){
				return true;
				}
		}
		alert(title+"不能为空！");
		obj.focus();
		return false;
	} catch (e) {
        return false;
    }
}
//去除等级标识符
//Add by linpengcheng at 2006-09-21
function trimLevel(str){
	if (str==null)  return null;
    var s="";
	str=trim(str);
	s=str;
    for (var i=0;i<str.length;i++)
    {
        if (str.charAt(i)=="└")
        {
            s=str.substr(i+1);
            break;
        }
    }
    return s;
}
//生成随机数
//Add by linpengcheng at 2006-09-26
function RndNum(n)
{
	var today=new Date();
	var year=today.getYear();
	var mouth=today.getMonth();
	var day=today.getDay();
    var rnd="";
    for(var i=0;i<n;i++)
        rnd+=Math.floor(Math.random()*10);
    return rnd+year+mouth+day;
}

//added by lishujin on 2006-10-10
String.prototype.endsWith=function(suffix){ return this.substring(this.length-suffix.length)==suffix; }


function showTbody(tbodyS,imgS){
  try{
    var tbody=document.getElementById(tbodyS);
	var imgPage=document.getElementById(imgS);
    if(tbody){
      if(tbody.style.display=='none'){
        tbody.style.display='block';
		imgPage.src="/12315/images/hide.gif";
      }else{
        tbody.style.display='none';
		imgPage.src="/12315/images/show.gif";
      }
    }
  }catch(e){}
}


// 录音文件名获取
function getRecFileName(filePath) {
  while (filePath.indexOf("\\")>-1) {
    filePath = filePath.substr(filePath.indexOf("\\")+1);
  }
  return filePath;
}

// 录音文件播放
function playVoice(filePath) {
  try {
    if (filePath==null||filePath=='') {
      var recfile = document.getElementById("tbReginfo.recfilepath");
      if (recfile) {
        filePath = document.getElementById("tbReginfo.recfilepath").value;
        if (!filePath) {
          return;
        }
      }
    }
    if(filePath.indexOf('VOC')>-1){
      play(filePath);
    }
    else {
      if (parent.document.all.CtiBar) {
      	parent.document.all.CtiBar.PlayFile(filePath,0,0);
      }
      else if (parent.parent.document.all.CtiBar) {
      	parent.parent.document.all.CtiBar.PlayFile(filePath,0,0);
      }
      else if (parent.parent.parent.document.all.CtiBar) {
      	parent.parent.parent.document.all.CtiBar.PlayFile(filePath,0,0);
      }
    }
  }
  catch(e) {
    alert("插件无法使用，请将该站点设置为可信站点，并将安全级别设为低！");
  }
}

var winPlay
function play(file){
	var option="x=150,y=150, top=100, left=150, width=480,height=250,toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=no, status=no, titlebar=no";
	winPlay = window.open('/12315/night/play.do?action=play&file='+file,"",option)
}
function stop(){
	winPlay.close()
}

function UTF8UrlEncode(input) {
    var output = "";
    var currentChar = '';    
    for(var counter = 0; counter < input.length; counter++) {
        currentChar = input.charCodeAt(counter);        
        if((48 <= currentChar) && (currentChar <= 57))
            output = output + input.charAt(counter);
        else if((65 <= currentChar) && (currentChar <= 90))
            output = output + input.charAt(counter);
        else if((97 <= currentChar) && (currentChar <= 122))
            output = output + input.charAt(counter);
        else
            output =  output + UTF8UrlEncodeChar(currentChar);
    }
    return output;
}

function UTF8UrlEncodeChar(input) {
    if(input <= 0x7F) return "%" + input.toString(16);    
    var leadByte = 0xFF80; var hexString = ""; var leadByteSpace = 5;
    while(input > (Math.pow(2, leadByteSpace + 1) - 1)) {
        hexString = "%" + ((input & 0x3F) | 0x80).toString(16) + hexString;
        leadByte = (leadByte >> 1);
        leadByteSpace--;
        input = input >> 6;
    }
    return ("%" + (input | (leadByte & 0xFF)).toString(16) + hexString).toUpperCase();
}

// 调解书
function DoPrintTjs(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    var docdesc = "厦 工商调[2007]0000000000号";
    var docend1 = "厦门市工商行政管理局";
    var docend2 = "12315消费者申诉举报指挥中心";
    var wslsh = "0000";
    if (document.getElementById("docid")&&document.getElementById('docid').value!=null&&document.getElementById('docid').value!='') {
        docdesc = document.getElementById('docname').value+"调["+document.getElementById('year').value+"]"+document.getElementById('docid').value+document.getElementById('month').value+document.getElementById("tbReginfo.wslsh").value+"号";
        docend1 = document.getElementById('docend1').value;
        docend2 = document.getElementById('docend2').value;
    }
    docdesc = UTF8UrlEncode(docdesc);
    docend1 = UTF8UrlEncode(docend1);
    docend2 = UTF8UrlEncode(docend2);
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptIntercede.aspx?reginfo_sn="+reginfoSn+"&docdesc="+docdesc+"&docend1="+docend1+"&docend2="+docend2,
                           "_print");
}

// 终止调解书
function DoPrintZztjs(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    var docdesc = "厦 工商终调[2007]0000000000号";
    var docend1 = "厦门市工商行政管理局";
    var docend2 = "12315消费者申诉举报指挥中心";
    var wslsh = "0000";
    if (document.getElementById("docid")&&document.getElementById('docid').value!=null&&document.getElementById('docid').value!='') {
        docdesc = document.getElementById('docname').value+"终调["+document.getElementById('year').value+"]"+document.getElementById('docid').value+document.getElementById('month').value+document.getElementById("tbReginfo.wslsh").value+"号";
        docend1 = document.getElementById('docend1').value;
        docend2 = document.getElementById('docend2').value;
    }
    docdesc = UTF8UrlEncode(docdesc);
    docend1 = UTF8UrlEncode(docend1);
    docend2 = UTF8UrlEncode(docend2);
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptIntercedeEnd.aspx?reginfo_sn="+reginfoSn+"&docdesc="+docdesc+"&docend1="+docend1+"&docend2="+docend2,
                           "_print");
}

// 不予受理通知书
function DoPrintBysltzs(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    var docdesc = "厦 工商不受[2007]0000000000号";
    var docend1 = "厦门市工商行政管理局";
    var docend2 = "12315消费者申诉举报指挥中心";
    var wslsh = "0000";
    if (document.getElementById("docid")&&document.getElementById('docid').value!=null&&document.getElementById('docid').value!='') {
        docdesc = document.getElementById('docname').value+"不受["+document.getElementById('year').value+"]"+document.getElementById('docid').value+document.getElementById('month').value+document.getElementById("tbReginfo.wslsh").value+"号";
        docend1 = document.getElementById('docend1').value;
        docend2 = document.getElementById('docend2').value;
    }
    docdesc = UTF8UrlEncode(docdesc);
    docend1 = UTF8UrlEncode(docend1);
    docend2 = UTF8UrlEncode(docend2);
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptIgnoreNotice.aspx?reginfo_sn="+reginfoSn+"&docdesc="+docdesc+"&docend1="+docend1+"&docend2="+docend2,
                           "_print");
}

// 申诉记录单
function DoPrintJld(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptAppealRecord.aspx?reginfo_sn="+reginfoSn,
                           "_print");
}

// 移送函
function DoPrintYsh(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    var docend1 = "厦门市工商行政管理局12315消费者申诉举报指挥中心";
    if (document.getElementById("docend1")&&document.getElementById('docend2')) {
        docend1 = document.getElementById('docend1').value+document.getElementById('docend2').value;
    }
    docend1 = UTF8UrlEncode(docend1);
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptTranDocument.aspx?reginfo_sn="+reginfoSn+"&docend1="+docend1, 
                           "_print");
}

// 转办单
function DoPrintZbd(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    var docend1 = "厦门市工商行政管理局12315消费者申诉举报指挥中心";
    if (document.getElementById("docend1")&&document.getElementById('docend2')) {
        docend1 = document.getElementById('docend1').value+document.getElementById('docend2').value;
    }
    docend1 = UTF8UrlEncode(docend1);
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptDeportation.aspx?reginfo_sn="+reginfoSn+"&docend1="+docend1, 
                           "_print");
}

// 受理通知书
function DoPrintSltzs(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    var docend1 = "厦门市工商行政管理局";
    var docend2 = "12315消费者申诉举报指挥中心";
    var wslsh = "0000";
    if (document.getElementById("docid")&&document.getElementById('docid').value!=null&&document.getElementById('docid').value!='') {
        docend1 = document.getElementById('docend1').value;
        docend2 = document.getElementById('docend2').value;
    }
    docend1 = UTF8UrlEncode(docend1);
    docend2 = UTF8UrlEncode(docend2);
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptAcceptNotice.aspx?reginfo_sn="+reginfoSn+"&docend1="+docend1+"&docend2="+docend2,
                           "_print");
}

// 调查通知书
function DoPrintDctzs(reginfoSn) {
    if (!reginfoSn) {
        reginfoSn = document.getElementById("tbReginfo.sn").value;
    }
    var docdesc = "厦 工商调通[2007]0000000000号";
    var docend1 = "厦门市工商行政管理局";
    var docend2 = "12315消费者申诉举报指挥中心";
    var wslsh = "0000";
    if (document.getElementById("docid")&&document.getElementById('docid').value!=null&&document.getElementById('docid').value!='') {
        docdesc = document.getElementById('docname').value+"调通["+document.getElementById('year').value+"]"+document.getElementById('docid').value+document.getElementById('month').value+document.getElementById("tbReginfo.wslsh").value+"号";
        docend1 = document.getElementById('docend1').value;
        docend2 = document.getElementById('docend2').value;
    }
    docdesc = UTF8UrlEncode(docdesc);
    docend1 = UTF8UrlEncode(docend1);
    docend2 = UTF8UrlEncode(docend2);
    window.open("http://172.23.127.249:8088/IndustryCommerce/RptConsumerAppealNotify.aspx?reginfo_sn="+reginfoSn+"&docdesc="+docdesc+"&docend1="+docend1+"&docend2="+docend2,
                           "_print");
}

// 涉及客体单选框
//'/baseinfo/dialog/dictContentSingleTree.do?action=listDictContentTree&dictName=涉及客体类别', 
function showObtypeSingleTree() {
    var result = window.showModalDialog('/12315/dialog/SingleTree1.do', 
                                        '/baseinfo/dialog/obtypeSingleTree1.do', 
                                        'dialogWidth:480px;dialogHeight:420px;edge:sunken;center:yes;help:no;resizable:no;status:no;scroll:no');
    return result;
}

function showObtypeSingleTree1() {
    var result = window.showModalDialog('/12315/dialog/SingleTree.do', 
                                        '/baseinfo/dialog/obtypeSingleTree.do', 
                                        'dialogWidth:420px;dialogHeight:420px;edge:sunken;center:yes;help:no;resizable:no;status:no;scroll:no');
    return result;
}

function rzerotrim(str) {
    if (str==null) return null;
    var s="";
    for (var i=str.length-1;i>=0;i--)
    {
        if (str.charAt(i)!="0")
        {
            s=str.substring(0,i+1);
            break;
        }
    }
    return s;
}  

function selectAjnrTypeSsChange() {
  var type = document.getElementById("selectAjnrTypeSs").value;
  var ajnr = '';
  if (type=='a') {
    ajnr = '我中心（所）工作人员XXX、XXX于年月日召集双方当事人到我中心（所）进行调解，现双方达成一致意见[详见调解书（文书号）]，消费者表示满意。';
  }
  else if (type=='b') {
    ajnr = '我中心（所）工作人员XXX、XXX于年月日经电话调解，被诉方同意……，消费者表示满意。';
  }
  else if (type=='c') {
    ajnr = '我中心（所）工作人员XXX、XXX于年月日将该申（投）诉件转由XX公司调处，XX公司于年月日向我中心（所）反馈：……。';
  }
  else if (type=='d') {
    ajnr = '申诉方于年月日来电以……为由要求撤诉。';
  }
  else if (type=='e') {
    ajnr = '我中心（所）工作人员XXX、XXX于年月日召集双方当事人到我中心（所）进行调解，因双方意见分歧较大，无法达成一致，现予终止调解（终止调解书文号）。';
  }
  else if (type=='f') {
    ajnr = '我中心（所）工作人员XXX、XXX于年月日将该申（投）诉件移送XX单位调查处理，并于年月日告知申诉方，可直接拨打XX单位（电话：）联系。';
  }
  if (document.getElementById("tbIntercede.ajnr").value==null||document.getElementById("tbIntercede.ajnr").value=='') {
      document.getElementById("tbIntercede.ajnr").value = document.getElementById("tbIntercede.ajnr").value+ajnr;
    }
  else {
	  var bak = '\r\n<--以上由用户手工录入，提交时请删除该部分信息！-->\r\n';
	  if (document.getElementById("tbIntercede.ajnr").value.indexOf(bak)>-1) {
	    document.getElementById("tbIntercede.ajnr").value = document.getElementById("tbIntercede.ajnr").value.substring(0, document.getElementById("tbIntercede.ajnr").value.indexOf(bak));
  	}
  document.getElementById("tbIntercede.ajnr").value = document.getElementById("tbIntercede.ajnr").value+bak+ajnr;
  }
}

function selectAjnrTypeJbChange() {
  var type = document.getElementById("selectAjnrTypeJb").value;
  var ajnr = '';
  if (type=='h') {
    ajnr = '年月日我所执法人员XXX、XXX到……进行了现场检查，发现……情况，执法人员发出责令整改通知书（文书号）。';
  }
  else if (type=='i') {
    
  }
  if (document.getElementById("tbcase.ajnr").value==null||document.getElementById("tbcase.ajnr").value=='') {
      document.getElementById("tbcase.ajnr").value = document.getElementById("tbcase.ajnr").value+ajnr;
    }
  else {
	  var bak = '\r\n<--以上由用户手工录入，提交时请删除该部分信息！-->\r\n';
	  if (document.getElementById("tbcase.ajnr").value.indexOf(bak)>-1) {
	    document.getElementById("tbcase.ajnr").value = document.getElementById("tbcase.ajnr").value.substring(0, document.getElementById("tbcase.ajnr").value.indexOf(bak));
  	}
  document.getElementById("tbcase.ajnr").value = document.getElementById("tbcase.ajnr").value+bak+ajnr;
  }
}





// 附件-----begin
function uploadMyFile (attachType, relateSn) {
  var arr  = window.showModalDialog('/12315/goFileUpload.do?relateSn='+relateSn+'&attachType='+attachType, null, 
                                    "dialogWidth:450px;dialogHeight:280px;status:0;resizable:0;status:no;scroll=yes;help=no;");
  if (arr) {
    displayFile (arr);
    deleteSelf (0);
  }
}

function displayFile(arr) {
  if (arr && (arr[0] == "0")) {
    var xml = document.getElementById("xmlisland");
    var filesNode = xml.childNodes(1);
    var newFile = xml.createElement("file");
    var type = xml.createElement("type");
    var txt;
    if (arr[0]=="0") {
        txt = xml.createTextNode("附件");
    } 
    type.appendChild (txt);
    newFile.appendChild (type);
    //增加ID        
    newFile.setAttribute("id", "" + arr[2][0]);
    //增加类型
    if (arr[0]=="0") {
        newFile.setAttribute("kind", '0');
    } 
    //增加链接
    var link = xml.createElement ("link");
    if (arr[0]=="0") {
        txt = xml.createTextNode("/12315/fileDownload.do?fn=" + arr[2][2]);
    } 
    link.appendChild (txt);
    newFile.appendChild (link);
    //增加名称
    var name = xml.createElement ("name");
    txt = xml.createTextNode (arr[2][1]);
    name.appendChild (txt);
    newFile.appendChild (name);
    //增加上传时间
    var uploadTime = xml.createElement("uploadtime");
    txt = xml.createTextNode (arr[2][4]);
    uploadTime.appendChild (txt);
    newFile.appendChild (uploadTime);
    //增加上传人
    var uploadRem = xml.createElement("uploadRem");
    txt = xml.createTextNode (arr[2][5]);//fileUpload
    uploadRem.appendChild (txt);
    newFile.appendChild (uploadRem);
    //增加删除的链接
    var del = xml.createElement("del");
    if (arr[0] == '0') {
        txt = xml.createTextNode ("javascript:delRec('" + arr[2][0] + "')");
    }
    del.appendChild (txt);
    newFile.appendChild (del);
    //增加删除文字
    var operation = xml.createElement("operation");
    txt = xml.createTextNode ('删除');
    operation.appendChild (txt);
    newFile.appendChild (operation);
    filesNode.appendChild (newFile);  
  } else if (arr) {
      alert (arr[1]);
  }
}

function delRec (id) {
  var xml = document.getElementById("xmlisland");
  var filesNode = xml.childNodes (1);
  if (confirm('您确定要删除该附件？')==1){
    for (var i = 0; i < filesNode.childNodes.length; i++) {
        var current = filesNode.childNodes(i);      
        var idx = parseInt(current.getAttribute ("id"));
        if (id == idx) {
            buffalo.remoteCall("docService.deleteTbFilecontent",[""+id],
              function(reply){
                var OK = reply.getResult();
              }
            );            
            filesNode.removeChild (filesNode.childNodes (i));            
            break;
        }
    }
  }
}

function deleteSelf (idx) {
    var xml = document.getElementById("xmlisland");
    var filesNode = xml.childNodes (1);    
    for (var i = 0; i < filesNode.childNodes.length; i++) {
        var current = filesNode.childNodes(i);
        var id = parseInt(current.getAttribute ("id"));
        if (id == idx) {
            filesNode.removeChild (filesNode.childNodes (i));
            break;
        }
    }
}
// 附件-----end

