/*$############################################# ## $*/
/* プログラム関数: 入力検証*/
/* 関数名: */
/* function CheckData(valname,val,valimode,limitlen) */
/* 関数説明: 文字列データの検証 */
/* function CheckUserName(val,min,max) */
/* 関数の説明: ユーザー名の検証 */
/* function CheckPassWord(val,min, max) * /
/* 関数の説明: パスワードを検証します */
/* function IsSame(val1,val2) */
/* パスワードの一致を検証します */
/* function CheckEmail(val, mode) * /
/* 関数の説明: 電子メールの検証 */
/* 関数 CheckValHeight(val,min,max,mode) */
/* 関数の説明: ユーザーの身長の検証*/
/* 関数CheckValWeight(val,min,max,mode) */
/* 関数の説明: ユーザーの体重を確認します*/
/* function CheckNumber(val,min,max,mode) */
/ * 関数の説明: 正の値を検証 */
/* function CheckPositive(val,min,max,mode) */
/* 関数の説明: 正の値を検証 */
/* function CheckNegative(val,min ,max ,mode) */
/* 関数の説明: 負の値を検証 */
/* function CheckFloat(val,min,max,mode) */
/* 関数の説明: 浮動小数点値を検証*/
/* function CheckPath(val,mode) */
/* 関数の説明: ファイルパスの確認*/
/* function CheckURL(val,mode) */
/* 関数の説明:URL検証 */
/* function CheckChinaIDCard_J(val,mode) */
/* 関数説明:IDカード検証*/
/* function isInteger(sNum) */
/* Function説明: Verify integer */
/* function CheckZip(val,slen,mode) */
/* 関数の説明: Verify Zip */
/* 入力パラメータ: mode true & false (許可されているかどうか) be Empty) */
/* val form (判定項目)、va2 form (判定項目) */
/* max (最大値)、min (最小値)... */
/ * 執筆時間: 2003.09.08.2214 */
/*$############################## ##### #############$*/
//文字列データを検証します
function CheckData(valname,val,valimode,limitlen){
if( val.value.indexOf( "0 || val.value.indexOf(">",0)>0){
alert(valname " 文字を含めることはできません!. ");
val.focus();
val.select();
return false;
}
if(valimode==1){
if(isblank(val) .value)){
alert(valname "空にすることはできません!");
val.select();
return
}
tmp=new String(val.value)
if(istoolong(tmp,limitlen)){
alert(valname "limitlen "文字を超えることはできません!"); >val.select();
return false;
}
}
else{
tmp=new String(val.value)
if(istoolong(tmp,limitlen) ) {
alert(valname "制限長" 文字を超えることはできません!!");
val.select();
return
}
true を返す;
}
関数 isblank(str){
var i;
for(i=0;i
return false;
}
function istolong(str,i) {
var len=str.length;
else{
if(len>i)
return true; 🎜>return false;
}
}
// ユーザー名を確認します
function CheckUserName(val,min,max){
var len = val.value.length; (len
max){
alert("ユーザー名の長さが間違っています。" min " ~ " max " の英字と数字にする必要があります。");
val.focus(); >val.select();
return false;
}
for (i=0;i
if ( (ch
"9") && (ch
"z")){
alert("ユーザー名は小文字または数字で構成する必要があります。 ");
val.select();
return false;
}
}
var first =val.value.charAt(0)
if (first
alert("ユーザー名は小文字で始める必要があります。"); val.select(); >return false; }
return true;
}
//パスワードを確認します
function CheckPassWord(val,min,max){
var len = val.value.length;
if (len
max){
alert("パスワードの長さが正しくありません。" min "-" max " の英字と数字である必要があります。"); val.select();
return false;
}
for (i=0;i
if ( (ch
"9") && (ch
"z")){
alert("パスワードは小文字または数字で構成する必要があります。"); >val.focus();
val.select();
return false;
}
if (val1.value != val2.value ){
alert("2 回入力されたパスワードは同じではありません。");
val2.focus() ;
val2.select();
return
}
return true; 関数 CheckEmail(val,mode) ) { if((mode==0) && (val.value=="")){
return true;
var etext
var elen
var i
var aa
etext=val.value
elen=etext.length
if (elenalert("正しいメールアドレスを入力してください。 ");
val.focus();
val.select();
return false;
}
i= etext.indexOf("@",0)
if (i==0 || i==-1 || i==elen-1){
alert("正しいメールアドレスを入力してください。");
val.focus(); .select();
return false;
}
else{
if (etext.indexOf("@",i 1)!=-1){
alert("を入力してください正しい電子メール。");
val.focus();
val.select();
return false;
}
}
if (etext.indexOf("..",i 1)!=-1){
alert("正しいメールアドレスを入力してください。");
val.select(); }
i=etext.indexOf(".",0)
if (i==0 || i==-1 || etext.charAt(elen-1)=='.'){
alert("正しいメールアドレスを入力してください。");
val.focus();
return
}
if ( etext.charAt (0)=='-' || etext.charAt(elen-1)=='-'){
alert("正しいメールアドレスを入力してください。"); 🎜>val.select();
return false;
}
if (etext.charAt(0)=='_' || etext.charAt(elen-1)=='_') {
alert("正しいメールアドレスを入力してください。");
val.focus();
return
}
for ( =0;iaa=etext.charAt(i)
if (!((aa=='.') || (aa=='@') | | (aa=='-') ||(aa=='_') || (aa>='0' && aa
='a' && aa
='A' && aaalert("正しいメールアドレスを入力してください。");
val.select();
return }
} return true; } //ユーザーの身長を確認します
function CheckValHeight(val,min,max,mode){
if((mode==0) && ( val.value=="")){
return true;
}
var len = val.value.length;
if (len
max){
alert("正しい高さデータを入力してください。 ");
val.focus();
val.select();
return false;
}
var val2 = val.value;
for (i=0; i
if ( (ch
"9") ){
alert("高さデータは有効な値で構成されている必要があります数字の構成。 ");
val.focus();
val.select();
return false;
}
if (isNaN(val2)){ alert("高さデータは有効な数字で構成されている必要があります。");
val.focus();
val.select();
return
}
else if ( parseInt (val2)alert("高さデータは有効な数字で構成されている必要があります。");
val.select();
return false;
}
else if (val2.indexOf('0')==0){
alert("高さデータは有効な数字で構成されている必要があります。");
val.focus(); 🎜 >val.select();
return false; }
return true;
関数 CheckValWeight(val,min,max,mode) {
if((mode==0) && (val.value=="")){
return true;
var len = val.value.length; ( len
max){
alert("正しい体重データを入力してください。");
val.select();
return
}
var val2 = val.value;
for (i=0;i
"9") ){
alert("体重データは有効な数字で構成されている必要があります。");
val.select();
return false;
}
}
alert("体重データは有効な数字で構成されている必要があります。 ");
val.focus();
val.select();
return false;
}
else if (parseInt(val2)alert (「重みデータは有効な数字で構成されている必要があります。」);
return false; else if (val2.indexOf) ('0')==0){
alert("体重データは有効な数字で構成されている必要があります。");
val.select(); ;
}
return true;
}
//値を検証
function CheckNumber(val,min,max,mode){
if((mode==0) && ( val.value=="")){
return true;
}
var len = val.value.length;
if (len
max){ alert("正しい値を入力してください。 ");
val.focus();
val.select();
return false;
}
var val2 = val.value;
for (i=1;i
if ( (ch
"9" ) ){
alert("正しい値を入力してください。 ");
val.focus();
val.select();
return false;
}
}
if (isNaN(val2) ){
alert("正しい値を入力してください。");
val.focus();
return
else if (val2.indexOf('0')==0 && len>1){
alert("正しい有効な値を入力してください。");
val.focus(); );
return false;
}
else if (val2.indexOf('-')==0 && val2.indexOf('0')==1){
alert("正しい有効な値を入力してください。 ");
val.select(); return false;
}
return true;
}
//正の値を検証
関数 CheckPositive(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
if(!CheckNumber(val,min,max,mode)){
val.focus();
return false;
if (parseInt( val.value)alert("データは有効な正の整数である必要があります。");
val.select();
return false;
}
return true;
}
//負の値を検証します
function CheckNegative(val,min,max,mode){
if((mode==0) && ( val.value=="")){
return true;
}
if(!CheckNumber(val,min,max,mode)){
val.focus(); val.select();
return false;
}
if (parseInt(val.value)>=0){
alert("データは有効な負の整数である必要があります。");
val.focus();
val.select();
return false;
}
return true;
}
//浮動小数点値を検証する
関数 CheckFloat(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
>var len = val.value.length;
if (len
max){
return false;
}
var val2 = val.value;
for (i=1;i
if ( (ch
"9" ) ){
alert("正しい浮動小数点値を入力してください. "); val.focus();
val.select();
return false;
}
}
}
if (isNaN(val2)) {
alert("正しい浮動小数点値を入力してください。");
val.focus();
return
}
else if (val2.indexOf('0')==0 && val2.indexOf('.')!=1){
alert("正しい有効な浮動小数点値を入力してください。"); focus();
val.select();
return
}
else if (val2.indexOf('-')==0 && val2.indexOf('0')= =1 && val2.indexOf('.')!=2){
alert("正しい有効な浮動小数点値を入力してください。");
val.focus(); );
return false;
}
else if (val2.indexOf('-')==0 && val2.indexOf('.')==1){
alert("正しい有効な浮動小数点値を入力してください。 ");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('.')==0){
alert("正しい有効な浮動小数点値を入力してください。");
val.focus();
return
}
return true;
}
//ファイルパスを確認します
function CheckPath(val,mode){
if((mode==0) && (val.value=="")){
true を返す;
}
var val2 = val.value;
if ( val2.indexOf(':\')>0 ){
var isNot=" !@#$^*( )'`~|]}[{;.>,%& =";
if (val2.indexOf('"')>0){
alert("正しいファイル パスを入力してください。 ");
val.focus();
val.select();
return false;
}
else{ %& =";
for (var i = 0;i for (var x = 1 ;x if (val2.charAt(i)==isNot.charAt(x)){
alert( "正しいファイル パスを入力してください。");
val.focus()
val.select();
}
} } }
else{
alert("正しいファイル パスを入力してください。");
val.select();
}
return true;
}
//検証 URL
function CheckURL(val,mode){
if((mode==0) && (val.value==) "")){
true を返す;
}
var val2 = val.value;
if ( val2.indexOf('://')>0 ){
var isNot= " !@$^*()'`~|]}[{;.>,if (val2.indexOf('"')>0){
alert("正しいものを入力してくださいURL。 ");
val.focus();
val.select();
return false;
}
else{
for (var i = 0;i for (var x = 1 ;x if (val2.charAt(i)==isNot.charAt(x)){
alert( "正しい URL を入力してください。"); val.focus()
val.select();
}
}
}
}
else{
alert("正しい URL を入力してください。"); val.select(); >} return true;
}
//ID カードを検証
function CheckChinaIDCard_J(val,mode){
if((mode==0) && (val.value==) ")){
return true;
}
sNo = val.value.toString()
if (!isInteger(sNo)) {
alert("正しい ID カードを入力してください. ");
val.focus();
val.select();
return false
}
switch(sNo.length){
ケース 15: if (isValidDate (sNo.substr(6,2),sNo.substr(8,2),sNo.substr(10,2))) {
return true
}
ケース 17: if (isValidDate(sNo .substr(6,4),sNo.substr(10,2),sNo.substr(12,2))) {
return true
}
}
alert("正しく入力してくださいIDカード。");
val.focus();
val.select();
return false
}
function isInteger(sNum) {
var num
num=new RegExp('[^0-9_]','')
if (isNaN(sNum)) {
return false
}
else {
if (sNum.search(num) >=0) {
return false
}
else {
return true
}
}
}
//Zip の検証
function CheckZip(val ,slen,mode){
if((mode==0) && (val.value=="")){
return true;
}
if(val.value.length! =slen){
alert('正しい郵便番号を入力してください!!');
val.focus()
return false
}
var r1
r1 = new RegExp('[^0-9]','');
if ( val.value.search(r1) >= 0 ) {
alert('入力してください正しい郵便番号です!!');
val.focus();
return false
}
else
return true; 🎜>電話番号の認証
要件:
(1) 電話番号は数字「(」、「)」、「-」で構成されています
(2) 電話番号は3桁から8桁である必要があります
(3) 電話番号に市外局番が含まれる場合、市外局番は3桁または4桁である必要があります
(4) 市外局番は「(」、「)」、「-」で他の部分と区切ってください。 「
」(5)携帯電話番号は11桁または12桁です。12桁の場合、最初の桁は0です
(6)11桁の携帯電話番号の1桁目と2桁目は「13」 "
(7) 12 携帯電話番号の 2 桁目と 3 桁目は「13」
これらの規則に従って、次の正規表現を生成できます:
(^[0-9]{3 ,4}-[ 0-9]{3,8}$)|(^[0-9]{3,8}$)|(^([0-9]{3,4})[0-9 ]{3,8 }$)|(^0{0,1}13[0-9]{9}$)