/**
* 判断客户端浏览器类型的变量
*/
var isIE = (navigator.appName == 'Microsoft Internet Explorer');
var isNetscape = (navigator.appName == 'Netscape');
/**
* 清空页面所有输入框的内容,包括文本和密码
*/
function clearInput()
{
var allInput = document.getElementsByTagName("input");
for(var i=0; i<allInput.length; i++)
{
var tagBody = allInput[i];
if (tagBody.getAttribute("type") == "text"||tagBody.getAttribute("type") == "password")
{
tagBody.value= "";
}
}
}
/**
* 检验字符串是否为空
* @param {String} 字符串
* @return {bool} 是否为空
*/
function isEmpty(input)
{
if( input==null || trim(input).length == 0 || input == 'null')
return true;
else
return false;
}
/**
* 检查字符串的长度
* @param {String} 字符串
* @param {Integer} 要比较的长度
* @return {bool} true:变量长度<给出的长度;false:变量长度>=给出的长度
*/
function isShorter(str,reqlength)
{
if( str.length<reqlength )
return true;
else
return false;
}
/**
* 检查字符串是否是整数
* @param {String} 字符串
* @return {bool} 是否是整数
*/
function isInteger( s )
{
var isInteger = RegExp(/^[0-9]+$/);
return ( isInteger.test(s) );
}
/**
* 检查字符串是否是字母
* @param {String} 字符串
* @return {bool} 是否是字母
*/
function isChar( s )
{
var isInteger = RegExp(/^[a-zA-Z]+$/);
return ( isInteger.test(s) );
}
/**
* 判断输入变量是否是实数
* @param {String} 要检查的变量值
* @return {bool} 是否为实数
*/
function isDecimal( s )
{
var isDecimal = RegExp(/^([0-9]+(\.?))?[0-9]+$/);
return ( isDecimal.test(s) );
}
/**
* 判断输入变量是否是数字或者字母
* @param {String} 要检查的变量值
* @return {bool} 是否为数字或者字母
*/
function isIntChar( s )
{
var isIntChar = RegExp(/^[a-zA-Z0-9]+$/);
return ( isIntChar.test(s) );
}
/**
* 判断输入变量是否是数字或者字母或者特殊字符
* 特殊字符:|_ - * & % $ # @ ! ~ ^ ( )
* @param {String} 要检查的变量值
* @return {bool} 是否为数字或者字母或者特殊字符
*/
function isIntCharSpecial( s )
{
var isIntCharSpecial = RegExp(/^[a-zA-Z0-9(\|)(\_)(\-)(\*)(\&)(\%)(\$)(\#)(\@)(\!)(\~)(\^)(\()(\))]+$/);
return ( isIntCharSpecial.test(s) );
}
/**
* 判断输入变量是否包含数字或者字母
* @param {String} 要检查的变量值
* @return {bool} 是否包含数字或者字母
*/
function containIntChar( s )
{
var containIntChar = RegExp(/[a-zA-Z0-9]+/);
return ( containIntChar.test(s) );
}
/**
* 判断输入变量是否包含特殊字符
* 特殊字符:~ ! @ # $ % ^ & * ( ) - _ + = [ ] { } | \ ; : ' " , . / < > ? <
* @param {String} 要检查的变量值
* @return {bool} 是否包含特殊字符
*/
function containSpecial( s )
{
var containSpecial = RegExp(/[(\ )(\~)(\!)(\@)(\#)(\$)(\%)(\^)(\&)(\*)(\()(\))(\-)(\_)(\+)(\=)(\[)(\])(\{)(\})(\|)(\\)(\;)(\:)(\')(\")(\,)(\.)(\/)(\<)(\>)(\?)(\)]+/);
return ( containSpecial.test(s) );
}
/**
* 检查字符串是否为合法email地址
* @param {String} 字符串
* @return {bool} 是否为合法email地址
*/
function isEmail(s)
{
var isEmail = RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/);
return ( isEmail.test(s) );
}
/**
* 若为null则替换为指定的字符串
* @param {String} 要测试的字符串
* @param {String} 为空时替换的字符串
* @return {String}
*/
function nvl(s,replaceString)
{
if ( isEmpty(s) )
return replaceString;
else
return s;
}
/**
* 将页面中或指定表格ID的所有checkbox置为选中状态或全不选状态
* @param {bool} choose: true选中;false不选
* @param {string} tableID:要指定的表格ID
*/
function selectAll(choose,tableID)
{
var allCheck;
if (arguments.length == 1) {
allCheck = document.getElementsByTagName("input");
}else{
allCheck = document.getElementById(tableID).getElementsByTagName("input");
}
for(var i=0; i<allCheck.length; i++){
var tagBody = allCheck[i];
if (tagBody.getAttribute("type") == "checkbox")
{
tagBody.checked= choose;
}
}
}
/**
* 取得页面中的所有选中的checkbox的id列表
* @return {String} 以'|'分隔的选中id,如果没有选中任何checkbox则返回空串
*/
function getCheckList()
{
var checkList = '';
var allCheck = document.getElementsByTagName("input");
for(var i=0; i<allCheck.length; i++)
{
var tagBody = allCheck[i];
if (tagBody.getAttribute("type") == "checkbox")
{
if ( tagBody.checked && !isEmpty(tagBody.id) )
{
checkList += tagBody.id + '|';
}
}
}
return checkList;
}
/**
* 取得指定的radio按钮的选中值
* @param {String} radio按钮ID
* @return {String} radio按钮的选中值
*/
function getRadioValue(radioName)
{
var radioList = document.getElementsByName(radioName);
for (var i = 0; i < radioList.length; i++)
{
if( radioList[i].checked == true )
{
return radioList[i].value;
}
}
}
/**
* 检验日期是否符合YYYYMMDD的格式,是否合法
* @param {String} 日期字符串
* @return {bool} 是否是合法日期
*/
/*
function isDate(dateInput) {
var inputYear = dateInput.substring( 0, 4 );
var inputMonth = parseInt(dateInput.substring( 4, 6 ))-1;
var inputDay = dateInput.substring( 6, 8 );
var dateTest = new Date(inputYear,inputMonth,inputDay);
var testYear = dateTest.getFullYear();
var testMonth = dateTest.getMonth();
var testDay = dateTest.getDate();
var isValidateDate = (inputYear == testYear && inputMonth == testMonth && inputDay == testDay );
return isValidateDate;
}*/
function isDate(param) {
var pattern = /^\d+$/;
if ( param.length != 8 ) {
return false;
}
if(!pattern.test(param)) {
return false;
}
sYear = param.substring( 0, 4 );
sMonth = param.substring( 4, 6 );
sDay = param.substring( 6, 8 );
if ( ( eval( sMonth ) < 1 ) || ( eval( sMonth ) > 12 ) ) {
return false;
}
var leapYear = ((( sYear % 4 == 0 ) && ( sYear % 100 != 0 )) || ( sYear % 400 == 0 )) ? true : false;
var monthDay = new Array(12);
monthDay[0] = 31;
monthDay[1] = leapYear ? 29 : 28;
monthDay[2] = 31;
monthDay[3] = 30;
monthDay[4] = 31;
monthDay[5] = 30;
monthDay[6] = 31;
monthDay[7] = 31;
monthDay[8] = 30;
monthDay[9] = 31;
monthDay[10] = 30;
monthDay[11] = 31;
if ( ( eval( sDay ) < 1 ) || ( eval( sDay ) > monthDay[eval(sMonth)-1] ) ) {
return false;
}
return true;
}
/**
* 检查日期选择的格式及区间女装品牌排行榜
*/
function checkDate(beginDate,endDate){
if (! isDate(beginDate)) {
alert("起始日期不正确");
beginDate.focus();
return true;
}
if (! isDate(endDate)) {
alert("终止日期不正确");
beginDate.focus();
return true;
}
if((beginDate)>(endDate)){
alert("截止日期应大于或等于起始日期,请重新输入");
return true;
}
if (parseInt(endDate, 10) < parseInt(beginDate, 10) || ! dateInterval(beginDate,endDate, 90)) {
alert("终止日期应在起始日期之后90天内");
return true;
}
}
function isDate1(dateInput){
var inputYear = dateInput.substring( 0, 4 );
var inputMonth = parseInt(dateInput.substring( 4, 6 ));
var dateTest = new Date(inputYear,inputMonth);
var testYear = dateTest.getFullYear();
var testMonth = dateTest.getMonth();
var isValidateDate = (inputYear == testYear && inputMonth == testMonth );
return isValidateDate;
}
/**
* 去掉字符串前后的空格
* @param {String} 字符串
* @return {String} 去除空格后的字符串
*/
function trim(input) {
return input.replace(/(^\s*)|(\s*$)/g, "");
}
/**
* 检查时间间隔是否在规定间隔之内
* @param {String} 开始日期
* @param {String} 结束日期
* @param {Integer} 间隔,单位为天
* @return {bool} 是否在规定间隔之内
*/
function dateInterval(startDate,endDate,interval) {
var date1 = new Date(eval(startDate.substring(0,4)),eval(startDate.substring(4,6))-1,eval(startDate.substring(6,8)));
var date2 = new Date(eval(endDate.substring(0,4)),eval(endDate.substring(4,6))-1,eval(endDate.substring(6,8)));
if ( ( date2 - date1 ) / 86400000 > eval(interval) - 1 )
return false;
return true;
}
/**
* 控制text域的最大输入长度
* 用法:onblur="checkLength(this,要控制的长度);"
* @param {Object} text对象
* @param {Integer} 要控制的长度
*/
function checkLength(v,l){
var s = v.value;
var totalLength = 0;
var charCode;
for(i=0;i<s.length;i++)
{
charCode = s.charCodeAt(i);
if (charCode < 0x007f) {
totalLength ++;
} else if ((0x0080 <= charCode) && (charCode <= 0x07ff)) {
totalLength += 2;
} else if ((0x0800 <= charCode) && (charCode <= 0xffff)) {
totalLength += 3;
}
}
if( l>=totalLength )
{
return true;
}
else
{
//alert("该输入项插入值过长!最多输入"+l+"个字节");
v.value = "";
v.focus();
return false;
}
}
function alterButton(acceptBtId,ipt){
var accBtn = document.getElementById(acceptBtId);
if(accBtn)
if(ipt.value.length!=0){
accBtn.disabled = true;
}else{
accBtn.disabled = false;
}
}
/**
* 控制textarea域的最大输入长度
* 用法:onblur="checkAreaLength(this,要控制的长度);"
* @param {Object} textarea对象
* @param {Integer} 要控制的长度
*/
function checkAreaLength(v,l){
var s= v.value;
var totalLength = 0;
var charCode;
for(i=0;i<s.length;i++)
{
charCode = s.charCodeAt(i);
if (charCode < 0x007f) {
totalLength ++;
} else if ((0x0080 <= charCode) && (charCode <= 0x07ff)) {
totalLength += 2;
} else if ((0x0800 <= charCode) && (charCode <= 0xffff)) {
totalLength += 3;
}
}
if(totalLength>l){
//alert("该输入项插入值过长!最多输入"+l+"个字节");
v.value = "";
v.focus();
return false;
}
return true;
}
/**
* 修改指定tag的样式
* @param {String} tag的id
* @param {String} 新的样式
*/
function changeClass(tagId,newClassName)
{
document.getElementById(tagId).className = newClassName;
}
/**
* 清空一个表的内容
* @param {String} 表体的ID
*/
function cleanTableBody(tbodyName)
{
var tbody = document.getElementById(tbodyName);
var rows=tbody.getElementsByTagName("TR");
var size = rows.length;
for(var i=0;i<size;i++)
{
tbody.deleteRow(0);
}
}货运专家
/**
* 更改一个对象的选中状态,可以用于radio和checkBox
* @param {String} 对象的ID
*/
function doCheck(objectID)
{
var checkObj = document.getElementById(objectID);
if(checkObj.checked){
checkObj.checked = false;
}else{
checkObj.checked = true;
}
}
/**
* 将yyyymmddhhmiss方式显示的日期转为中文显示
* @param {String} yyyymmddhhmiss格式的时间
*/
function getChineseDateTime(dateTime)
{
if( isEmpty(dateTime) || dateTime.length < 14 )
{
return dateTime;
}
var returnDate = dateTime.substr(0,4)+"年"+dateTime.substr(4,2)+"月"+dateTime.substr(6,2)+"日";
var returnTime = dateTime.substr(8,2)+":"+dateTime.substr(10,2)+":"+dateTime.substr(12,2);
return returnDate+returnTime;
}
/**
* 检验日期是否符合YYYYMM的格式,是否合法
* @param {String} 日期字符串
* @return {bool} 是否是合法日期
*/
function isYearMonth(param) {
var pattern = /^\d+$/;
if ( param.length != 6 ) {
return false;
}
if(!pattern.test(param)) {
return false;
}
sYear = param.substring( 0, 4 );
sMonth = param.substring( 4, 6 );
if ( ( eval( sMonth ) < 1 ) || ( eval( sMonth ) > 12 ) ) {
return false;
}
return true;
}
/**
* 高亮关键字
* @param {String} 搜索结果字符串
* @param {String} 搜索关键字
* @return {String} 关键字高亮的html字符串
*/
function highLightKeyword(content,key)
{
var SPAN_BEGIN_TAG = '<span class="highLight">';
var SPAN_END_TAG = '</span>';
var htmlString = '';
var searchStartPos = 0;
while(true)
{
var keyStartPos = content.indexOf(key,searchStartPos);
if( keyStartPos<0 )
{
htmlString += content.substring(searchStartPos);
return htmlString;
}
var keyEndPos = keyStartPos+key.length;
htmlString += content.substring(searchStartPos,keyStartPos);
htmlString += SPAN_BEGIN_TAG;
htmlString += key;
htmlString += SPAN_END_TAG;
searchStartPos = keyEndPos;
}
}
/**
* 获取账号列表中选中的账号
* @param {String} 账号列表的id
* @return {String} 账号
*/
function getAccountNo( selectId )
{
var selectValue = document.getElementById(selectId).value;
if ( !isEmpty(selectValue) )
{
return (selectValue.split('|'))[0];
}
return '';
}
/**
* 获取账号列表中选中的账户名称
* @param {String} 账号列表的id
* @return {String} 账户名称
*/
function getAccountName( selectId )
{
var selectValue = document.getElementById(selectId).value;
if ( !isEmpty(selectValue) )
{
return (selectValue.split('|'))[1];
}
return '';
}
/**
* 获取账号列表中选中的账户开户网点
* @param {String} 账号列表的id
* @return {String} 账户开户网点
*/
function getAccountOpenNode( selectId )
{
var selectValue = document.getElementById(selectId).value;
if ( !isEmpty(selectValue) )
{
return (selectValue.split('|'))[2];
}
return '';
}
/**
* 获取账号列表中选中的账户币种
* @param {String} 账号列表的id
* @return {String} 账户币种
*/
function getAccountCurrency( selectId )
{
var selectValue = document.getElementById(selectId).value;
if ( !isEmpty(selectValue) )
{
return (selectValue.split('|'))[3];
}
return '';
}
/*
* 显示提示
*/
function showTip(tipId,tipText){
document.getElementById(tipId).innerHTML = tipText;
changeClass(tipId,"tip_on");
}
/*
* 隐藏提示
*/
function hideTip(tipId){
document.getElementById(tipId).innerHTML = " ";
changeClass(tipId,"tip_off");
}
/*
* 隐藏所有的提示
*/
function hideAllTip(){
var divArr = document.getElementsByTagName("div");
for(i = 0 ; i < divArr.length ; i++){
var divId = divArr[i].id;
if(!isEmpty(divId) && divId.substring(divId.length-3,divId.length) == "Tip")
hideTip(divId);
}
}
/*
* 主交易区跳转到指定的action
* @param {String} action
*/
function linkTo(actionUrl)
{
window.top.doTranDispatch(actionUrl);
}
/*
* 根据页面实际高度更新框架大小
*/
function resize()
{
window.top.sizeChange();
}
/*
* 根据json数据生成输入表单用的html
* 示例:getInputHtmlFromJson({name:'mvmouse'},'test') = '<input type="hidden" name="test.name" value="mvmouse"/>'
* @param {json} jsonInput
* @param {String} input的name的前缀
* @return {String} 生成的html
*/
function getInputHtmlFromJson( jsonInput,namePrefix )
{
var resultHtml = '';
var prefixString ='<input type="hidden" name="'+namePrefix;
for (var key in jsonInput )
{
var value = jsonInput[key];
resultHtml += prefixString + key + '" value="'+value+'" />';
}
return resultHtml;
}
/*
* 修改下拉单中内容
*/
function changeSelectItem(selectName,selectValue){
var options=$(selectName).options;
for(var i=0;i<options.length;i++){
var optionValue=options[i].value.split("|");
if(optionValue[0]==selectValue){
options[i].selected=true;
return true;
}
}
return false;
}
/**
* 验证指定的checkbox是否全部没有选中
* @param {String} checkBoxName--checkbox对象的Name
* @return {boolean} 验证结果--true/全部没选中;false/有选中的
*/
function noneChecked(checkBoxName) {
var checkObj = document.getElementsByName(checkBoxName);
if (checkObj.length) {
for (var i = 0;i < checkObj.length;i ++) {
if (checkObj[i].checked) {
return false;
}
}
return true;
} else {
return ! checkObj.checked;
}
}
/**
* 生成一个隐藏域,放到Form提交表单中
* @param {Form} formObj--提交表单对象
* @param {String} name--隐藏域的名称
* @param {String} value--隐藏域的值
*/
function createHiddenField(formObj, name, value) {
var field = document.createElement("input");
field.type = "hidden";
field.name = name;
field.value = value;
formObj.appendChild(field);
}
/**
* 设置css换肤
* @param {title} 样式的名称
*/
function setActiveStyleSheet(title) {
var i,a;
if (title) {
for(i=0; (a = document.getElementsByTagName('link')[i]); i++) {
if(a.getAttribute('rel').indexOf('style') != -1 && a.getAttribute('title')) {
a.disabled = true;
if(a.getAttribute('title') == title) a.disabled = false;
}
}
}
}
/**
* 禁用所有button
*/
function disableAllButton()
{
var inputObjs=document.getElementsByTagName("input");
for(i=0;i<inputObjs.length;i++) {
if(inputObjs[i].type == "button" || inputObjs[i].type == "reset" || inputObjs[i].type == "submit") {
inputObjs[i].disabled=true;
}
}
}
/**
* 启用所有button
*/
function enableAllButton()
{
for(i=0;i<document.all.length;i++) {
if(document.all(i).type == "button" || document.all(i).type == "reset" || document.all(i).type == "submit") {
document.all(i).disabled=false;
}
}
}
/**
*是否为规范的电话号码
*/
function isTelephone(s) {
if(isEmpty(s) || !isInteger(s) || s.length > 12) {
alert('电话号码必须为12位以内的数字!');
return false;
}
return true;
}
/**
*格式化时间
*/
function formatDate(time) {
var s="";
if(time.length>8){
s=time.substring(0,4);
s=s+"-";
s=s+time.substring(4,6);
s=s+"-";
s=s+time.substring(6,8);
s=s+" ";
s=s+time.substring(8,10);
s=s+":";
s=s+time.substring(10,12);
s=s+":";
s=s+time.substring(12,14);
return s;
}else if(time==""){
return s;
}else{
s=time.substring(0,4);
s=s+"-";
s=s+time.substring(4,6);
s=s+"-";
s=s+time.substring(6,8);
return s;
}
}