//-------常用js Function
//------------start 已验证---------------//
//定义报错信息
var MSG_ERR001="$1不能为空!";
var MSG_ERR002="$1的文字格式为$2!";
var MSG_ERR003="$1不能超过$2个字节!";
var MSG_ERR004="不能删除$1!!";
function alertMSG(sMsg,sParam1,sParam2,sParam3) {
//引数1的替换
if ( sParam1 ) {
sMsg = sMsg.replace( "$1", sParam1 );
}
//引数2的替换
if ( sParam2
) {
sMsg = sMsg.replace( "$2", sParam2 );
}
//引数3的替换
if ( sParam3
) {
sMsg = sMsg.replace( "$3", sParam3 );
}
//Message表示
alert( sMsg
);
}
function confirmMSG( sMsg, sParam1, sParam2, sParam3 ) {
//引数1的替换
if ( sParam1 ) {
sMsg = sMsg.replace( "$1", sParam1 );
}
//引数2的替换
if ( sParam2
) {
sMsg = sMsg.replace( "$2", sParam2 );
}
//引数3的替换
if ( sParam3
) {
sMsg = sMsg.replace( "$3", sParam3 );
}
//Message表示
return
confirm(sMsg);
}
function lTrim(oTarget) {
var oResult = oTarget.replace( /^ */, "" );
return(oResult);
}
function rTrim(oTarget) {
var oResult = oTarget.replace( / *$/, "" );
return(oResult);
}
function trim(oTarget) {
var oResult;
//去左边空格
oResult = lTrim(oTarget);
//去右边空格
oResult = rTrim(oTarget);
return(oResult);
}
function parseNum( sVal ) {
if( !sVal ) {
return "";
}
var sResult
= new String( sVal );
sResult =
sResult.replace(/^ *0*/,"")
//去掉左边空格
.replace(/
+$/,"")
//去掉右边空格
.replace(/^///,"")
//金额
.replace(/,/g,"")
//逗号
.replace(//./g,"")
//小数点
.replace(/-/g,"");
//杠号
if ( isNaN(
sResult )){
return "";
}
if ( sResult
== "" ) {
return "";
}
return eval(
sResult );
}
function chkInt( oSrc, sMode ) {
var sVal = new String( oSrc );
if ( sMode
== 1 ) {
if ( sVal.match(/^([+-]?[0-9]{1,3}(,[0-9]{3})*)?$/) == null
&&
sVal.match(/^([+-]?[0-9]+)?$/) == null ) {
return false;
}
} else
{
if ( sVal.match(/^([0-9.]{1,3}(,[0-9.]{3})*)?$/) == null
&&
sVal.match(/^([0-9.]+)?$/) == null ) {
return false;
}
}
return
true;
}
function isDigit( oSrc ) {
var sVal =
new String( oSrc );
if ( sVal !=
"" ) {
if ( sVal.match(/^[0-9]+$/) == null ) {
return false;
}
}
return
true;
}
function isDigOrAlp( oSrc ) {
var sVal =
new String( oSrc );
if ( sVal !=
"" ) {
if ( sVal.match(/^[0-9A-Za-z]+$/) == null ) {
return false;
}
}
return
true;
}
function isZenkaku( sVal ) {
var
iCode;
for (var i = 0; i<sVal.length; i++) {
iCode = sVal.charCodeAt
(i);
if ((iCode <
127 && iCode != 13
&& iCode != 10) || (iCode
>= 0xff61 && iCode
<= 0xff9f)){
return
false;
}
}
return true;
}
function isHankaku( sVal ) {
var iLen =
cmGetEBCDICLen( sVal );
if ( iLen ==
sVal.length ) {
return true;
} else
{
return false;
}
}
function getEBCDICLen( sVal ) {
var iLen =
0;
for ( var i
= 0; i < sVal.length;i++) {
var sChar = sVal.charAt( i );
if ( escape( sChar ).length > 3 ) {
if ( sChar.charCodeAt( 0 ) >= 65382
&&
sChar.charCodeAt( 0 ) <= 65439 ) {
iLen += 2;
} else {
iLen += 2;
}
} else
{
iLen += 1;
}
}
return
iLen;
}
function checkMailAddress(sVal)
{
for(var i=0;i<sVal.length;i++){
var ascii =
sVal.charCodeAt(i);
//'<':60,'>':62,'{':123,'}':125,':':58,';':59,'"':34,'/':92,'[':91,']':93
if(ascii == 60 || ascii == 62
|| ascii == 123
|| ascii ==
125 || ascii == 58 || ascii == 59
|| ascii ==
34 || ascii == 92 || ascii == 91
|| ascii ==
93){
return false;
}
if(ascii<0 ||
ascii>255){
return
false;
}
}
var aVal = new Array();
aVal = sVal.split("@");
if(aVal.length != 2){
return false;
}else{
if(aVal[0] == "" || aVal[1] ==
""){
return
false;
}
}
return true;
}
function checkFieldValue(pFrame, pForm, pField, pHissu, pLenMin,
pLenMax, pAttr, pNm, pFieldFocus, pIndex)
{
with (window.top.frames[pFrame].document.forms[pForm])
{
var wData =
'';
if
(elements[pField].length){
wData = elements[pField][pIndex].value;
}
else{
wData = elements[pField].value;
}
//textarea的场合,去掉换行符
if (elements[pField].type == "textarea") {
wData =
wData.replace(//r/n/g,"");
}
//文件名开头去掉路径
if (pAttr ==
"FILE" && wData != ""){
//去掉'/'
if (wData.match(/^[//]+$/) == null ) {
var wDataArr = wData.split("//");
if (wDataArr.length > 1){
wData = wDataArr[wDataArr.length-1];
}
}
}
var iLen =
getEBCDICLen(wData);
//必须项check
if (pHissu
== 1) {
if (!iLen){
cmAlert(MSG_ERR001, pNm);
elements[pFieldFocus].focus();
return(false);
}
}
if (pLenMax != 0) {
if (iLen > pLenMax) {
alertMSG(MSG_ERR003, pNm, pLenMax);
elements[pFieldFocus].focus();
return(false);
}
}
//属性check
if (pAttr ==
"CN_AL"){
if (!isDigOrAlp(wData)) {
alertMSG(MSG_ERR002, pNm, "半角英数字");
elements[pFieldFocus].focus();
return(false);
}
}else if
(pAttr == "CN"){
if (!isDigit(wData)) {
alertMSG(MSG_ERR002, pNm, "半角数字");
elements[pFieldFocus].focus();
return(false);
}
}else
if(pAttr == "KJ"){
if(!isZenkaku(wData)){
alertMSG(MSG_ERR002, pNm, "全角文字");
elements[pFieldFocus].focus();
return(false);
}
}else if(pAttr == "MAL2"){
if(!checkMailAddress(wData)){
alertMSG(MSG_ERR002, pNm, "邮件地址");
elements[pFieldFocus].focus();
return(false);
}
}
return(true);
}
}
function
isDate(str){
if(!str.match(/^/d{4}/-/d/d?/-/d/d?$/)){return
false;}
var
ar=str.replace(//-0/g,"-").split("-");
ar=new
Array(parseInt(ar[0]),parseInt(ar[1])-1,parseInt(ar[2]));
var
d=new
Date(ar[0],ar[1],ar[2]);
return
d.getFullYear()==ar[0]
&&
d.getMonth()==ar[1]
&&
d.getDate()==ar[2];
}
//左边去空白
function testLtrim(sValue) {
for (var i=0; i<=sValue.length; i++ ) {
if(sValue.substring(i,i+1)!=" ")
break;
}
return sValue.substring(i,sValue.length);
}
// 右邊去空白
function testRtrim(sValue) {
for (var i=sValue.length; i>=0; i-- ) {
if(sValue.substring(i-1,i)!=" ")
break;
}
return sValue.substring(0, i);
}
// 左右邊去空白
function testAllTrim(sValue) {
return testRtrim(testLtrim(sValue));
}
//------------end 已验证---------------//
//------------start 未验证---------------//
//判断输入内容是否为空
function
IsNull(){
var str =
document.getElementById('str').value.trim();
if(str.length==0){
alert('对不起,文本框不能为空或者为空格!');//请将“文本框”改成你需要验证的属性名称!
}
}
//判断日期类型是否为YYYY-MM-DD格式的类型
function
IsDate(){
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
var reg =
/^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2})$/;
var r =
str.match(reg);
if(r==null)
alert('对不起,您输入的日期格式不正确!');
//请将“日期”改成你需要验证的属性名称!
}
}
//判断日期类型是否为YYYY-MM-DD
hh:mm:ss格式的类型
function
IsDateTime(){
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
var reg = /^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2})
(/d{1,2}):(/d{1,2}):(/d{1,2})$/;
var r =
str.match(reg);
if(r==null)
alert('对不起,您输入的日期格式不正确!');
//请将“日期”改成你需要验证的属性名称!
}
}
//判断日期类型是否为hh:mm:ss格式的类型
function
IsTime()
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^((20|21|22|23|[0-1]/d)/:[0-5][0-9])(/:[0-5][0-9])?$/
if(!reg.test(str)){
alert("对不起,您输入的日期格式不正确!");//请将“日期”改成你需要验证的属性名称!
}
}
}
//判断输入的字符是否为英文字母
function
IsLetter()
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[a-zA-Z]+$/;
if(!reg.test(str)){
alert("对不起,您输入的英文字母类型格式不正确!");//请将“英文字母类型”改成你需要验证的属性名称!
}
}
}
//判断输入的字符是否为整数
function
IsInteger()
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-+]?/d*$/;
if(!reg.test(str)){
alert("对不起,您输入的整数类型格式不正确!");//请将“整数类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的字符是否为双精度
function
IsDouble(val)
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-/+]?/d+(/./d+)?$/;
if(!reg.test(str)){
alert("对不起,您输入的双精度类型格式不正确!");//请将“双精度类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的字符是否为:a-z,A-Z,0-9
function
IsString()
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[a-zA-Z0-9_]+$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的字符是否为中文
function
IsChinese()
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[/u0391-/uFFE5]+$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的EMAIL格式是否正确
function
IsEmail()
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的邮编(只能为六位)是否正确
function
IsZIP()
{
var str =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^/d{6}$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的数字不大于某个特定的数字
function
MaxValue()
{
var val =
document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-+]?/d*$/;
if(!reg.test(str)){//判断是否为数字类型
if(val>parseInt('123'))
//“123”为自己设定的最大值
{
alert('对不起,您输入的数字超出范围');//请将“数字”改成你要验证的那个属性名称!
}
}
}
}
Phone :
/^((/(/d{2,3}/))|(/d{3}/-))?(/(0/d{2,3}/)|0/d{2,3}-)?[1-9]/d{6,7}(/-/d{1,4})?$/
Mobile :
/^((/(/d{2,3}/))|(/d{3}/-))?13/d{9}$/
Url :
/^http:////[A-Za-z0-9]+/.[A-Za-z0-9]+[//=/?%/-&_~`@[/]/':+!]*([^<>/"/"])*$/
IdCard :
/^/d{15}(/d{2}[A-Za-z0-9])?$/
QQ : /^[1-9]/d{4,8}$/
//为上面提供各个JS验证方法提供.trim()属性
String.prototype.trim=function(){
return this.replace(/(^/s*)|(/s*$)/g,
"");
}
附:
[input type="text" name="str"
]
[input type="button" value=" 确定 "
onClick=""]//onClick中写自己要调用的JS验证函数
//------------start 未验证---------------//
//-------End 常用js Function