<!--
z_to_h=new Object();
z_to_h['１']='1';
z_to_h['２']='2';
z_to_h['３']='3';
z_to_h['４']='4';
z_to_h['５']='5';
z_to_h['６']='6';
z_to_h['７']='7';
z_to_h['８']='8';
z_to_h['９']='9';
z_to_h['０']='0';
z_to_h['Ａ']='A';
z_to_h['Ｂ']='B';
z_to_h['Ｃ']='C';
z_to_h['Ｄ']='D';
z_to_h['Ｅ']='E';
z_to_h['Ｆ']='F';
z_to_h['Ｇ']='G';
z_to_h['Ｈ']='H';
z_to_h['Ｉ']='I';
z_to_h['Ｊ']='J';
z_to_h['Ｋ']='K';
z_to_h['Ｌ']='L';
z_to_h['Ｍ']='M';
z_to_h['Ｎ']='N';
z_to_h['Ｏ']='O';
z_to_h['Ｐ']='P';
z_to_h['Ｑ']='Q';
z_to_h['Ｒ']='R';
z_to_h['Ｓ']='S';
z_to_h['Ｔ']='T';
z_to_h['Ｕ']='U';
z_to_h['Ｖ']='V';
z_to_h['Ｗ']='W';
z_to_h['Ｘ']='X';
z_to_h['Ｙ']='Y';
z_to_h['Ｚ']='Z';
z_to_h['ａ']='a';
z_to_h['ｂ']='b';
z_to_h['ｃ']='c';
z_to_h['ｄ']='d';
z_to_h['ｅ']='e';
z_to_h['ｆ']='f';
z_to_h['ｇ']='g';
z_to_h['ｈ']='h';
z_to_h['ｉ']='i';
z_to_h['ｊ']='j';
z_to_h['ｋ']='k';
z_to_h['ｌ']='l';
z_to_h['ｍ']='m';
z_to_h['ｎ']='n';
z_to_h['ｏ']='o';
z_to_h['ｐ']='p';
z_to_h['ｑ']='q';
z_to_h['ｒ']='r';
z_to_h['ｓ']='s';
z_to_h['ｔ']='t';
z_to_h['ｕ']='u';
z_to_h['ｖ']='v';
z_to_h['ｗ']='w';
z_to_h['ｘ']='x';
z_to_h['ｙ']='y';
z_to_h['ｚ']='z';
z_to_h['−']='-';
z_to_h['ー']='-';
z_to_h['＠']='\@';
z_to_h['．']='.';
z_to_h['＿']='_';
var num='0123456789';
//var ltr='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';

var err_cmt=new Object();
err_cmt['leng']='以下の項目が最大文字数を越えています';
err_cmt['limt']='以下の項目に使用できない文字、または文字パターンが含まれています';
err_cmt['need']='以下の項目は入力必須です';
var err=new Object();

var limit=new Object();
//var limit['au']=new Object();
//limit['au']['ltr']='abcdefghijklmnopqrstuvwxyz0123456789._-';
//limit['au']['min_len']=2;
//limit['au']['max_len']=30;
//limit['au']['reg']='/^[0\.]/';
//var limit['docomo']=new Object();
//limit['docomo']['ltr']='abcdefghijklmnopqrstuvwxyz0123456789._-';
//limit['docomo']['min_len']=3;
//limit['docomo']['max_len']=30;
//limit['docomo']['reg']='/^[\d\._-]/';
//var limit['softbank']=new Object();
//limit['softbank']['ltr']='abcdefghijklmnopqrstuvwxyz0123456789._-';
//limit['softbank']['min_len']=3;
//limit['softbank']['max_len']=30;
//limit['softbank']['reg']='/[^[\d\._-]][\.{2,}][\.$]/';
limit['ltr']='abcdefghijklmnopqrstuvwxyz0123456789._-@';
limit['min_len']=2;
limit['max_len']=30;
limit['reg']='/^[0\.]/';


var check_element=new Array();		// チェックするオブジェクト ex. check_element[0]=f.title, check_element[1]=f.email, ...
var element_limt=new Object();		// オブジェクトのタイプ ex. element_limt[check_element[0]]='mail', element_limt[check_element[1]]='num_only'
var element_need=new Object();		// 必須 or 任意 ex. element_need[check_element[0]]=true, element_needcheck_element[1]]=false, ...
var element_leng=new Object();		// 最大文字数 ex. element_leng[check_element[0]]=30, ...
var element_name=new Object();		// 項目名 ex. element_name[check_element[0]]='メールアドレス', ...



function form_ck(){					// form のonsubmit として設定
	err['leng']=new Array();
	err['need']=new Array();
	err['limt']=new Array();
	for (var i=0;i<check_element.length;i++){
		// メタ文字,文頭文末の空白文字の削除
		check_element[i].value.replace(/^[ 　]+/g,'');
		check_element[i].value.replace(/[ 　]+$/g,'');
		check_element[i].value.replace(/\s/g,'');

		// mail,num_only の場合の前処理

		if (element_limt[check_element[i].name]=='mail' || element_limt[check_element[i].name]=='num_only'){
			check_element[i].value=z2h(check_element[i]);
			check_element[i].value=check_element[i].value.toLowerCase();
		}

		if (element_need[check_element[i].name] && !need_ck(check_element[i])){		// 必須項目の場合のチェック
			err['need'][err['need'].length]=check_element[i];
		}
		if (element_limt[check_element[i].name] && !limt_ck(check_element[i])){		// タイプのチェック
			err['limt'][err['limt'].length]=check_element[i];
		}	
		if (element_leng[check_element[i].name] && !leng_ck(check_element[i])){		// 最大文字数のチェック
			err['leng'][err['leng'].length]=check_element[i];
		}
	}
	if (err['leng'].length || err['need'].length || err['limt'].length){
		var msg='';
		for (var i in err){
			if (err[i].length){
				msg+=err_cmt[i]+"\n\n";
				for (var j=0;j<err[i].length;j++){
					msg+=element_name[err[i][j].name]+"\n";
					err_alert(err[i][j]);
				}
				msg+="\n";
			}
		}
		alert(msg);
		return false;
	}
	else {
		return true;
	}
}

function init_conf(){				// onchangeイベントの設定
	for (var i=0;i<check_element.length;i++){
		check_element[i].onchange=function anonymous() { to_default(this) }
	}
}

function limt_ck(e){
	if (element_limt[e.name]=='mail'){
		for (var i=0;i<e.value.length;i++){
			if (limit['ltr'].indexOf(e.value.substring(i,i+1))==-1){
				return false;
			}
		}
	}
	if (element_limt[e.name]=='num_only'){
		for (var i=0;i<e.value.length;i++){
			if (num.indexOf(e.value.substring(i,i+1))==-1){
				return false;
			}
		}
	}
	return true;
}

function leng_ck(e){
	if (element_leng[e.name]){
//		if (e.value.length>element_leng[e.name]){
		if (cnt_ltr(e)>element_leng[e.name]){
			return false;
		}
		else {
			return true;
		}
	}
}

function need_ck(e){
//	if (1<e.length){
//		if (elem[i].type=='select-one'){
//			var select_value=false;
//			if (!elem[i].options[elem[i].selectedIndex].value){
//				empty_fields+='\n'+el_name[elem[i].name];
//				err_alert(elem[i]);
//			}
//		}
//		else if (elem[i][0].type=='radio'){
//			var radio_value=false;
//			for (j=0;j<elem[i].length;j++){
//				if (elem[i][j].checked){
//					radio_value='true';
//				}
//			}
//			if (!radio_value){
//				empty_fields+='\n'+el_name[elem[i][0].name];
//				for (j=0;j<elem[i].length;j++){
//					err_alert(elem[i][j]);
//				}
//			}
//		}
//	}	
//	else if ((e.value==null)||(elem[i].value=='')||is_blank(elem[i].value)){
	if ((e.value==null) || (e.value=='') || !e.value){
		return false;
	}
	return true;
}

function cnt_ltr(i){
	var cnt=0;
	for (var j=0;j<i.value.length;j++){
		if (31<i.value.charCodeAt(j) && i.value.charCodeAt(j)<127){
			cnt++;
		}
		else if (i.value.charCodeAt(j)==13 && i.value.charCodeAt(j+1)==10){
		}
		else {
			cnt+=2;
		}
	}
	return cnt;
}

function z2h (elem) {
	var r_str='';
	for (j=0;j<elem.value.length;j++){
		var lettr;
		lettr=elem.value.substr(j,1);
		if (z_to_h[lettr]){
			lettr=z_to_h[lettr];
		}
		r_str+=lettr;
	}
	return r_str;
}

function err_alert (i) {
	i.style.color='red';
	i.style.fontWeight='bold';
	i.style.background='#c0c0c0';
}

function to_default (c){
	c.style.color='';
	c.style.fontWeight='';
	c.style.background='white';
}

// -->
