/********************************************************************************/
/*JavaScript 関数 ライブラリ													*/
/*																				*/
/*MSCOM Survey System 用のJavaScript											*/
/*NN4.0に完全対応																*/
/*																				*/
/*																				*/
/********************************************************************************/

/********************************************************************************/
/*数値チェック関数																*/
/*半角数字以外の文字が含まれるとfalseを返す										*/
/*引数																			*/
/* txt…検査したい文字列(string型)												*/
/********************************************************************************/
function number_check(txt){
var kana = "1234567890";

	for(i=0; i<txt.length; i++){
		if(kana.indexOf(txt.charAt(i),0) == -1){
			return false;
			break;
		}
	}
	return true;
}

/********************************************************************************/
/*全角カナチェック関数															*/
/*全角カナ以外の文字が含まれるとfalseを返す										*/
/*引数																			*/
/* txt…検査したい文字列(string型)												*/
/********************************************************************************/
function lkana_check(txt){
var kana = "アイウエオカキクケコサシスセソタチツテトナニヌネノ"
		+ "ハヒフヘホマミムメモヤユヨラリルレロワヲン"
		+ "ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ"
		+ "ァィゥェォッャュョヮヰヱヴヵヶー　";

	for(i=0; i<txt.length; i++){
		if(kana.indexOf(txt.charAt(i),0) == -1){
			return false;
			break;
		}
	}
	return true;
}

/********************************************************************************/
/*全角かなチェック関数															*/
/*全角かな以外の文字が含まれるとfalseを返す										*/
/*引数																			*/
/* txt…検査したい文字列(string型)												*/
/********************************************************************************/
function hkana_check(txt){
var kana = "あいうえおかきくけこさしすせそたちつてとなにぬねの"
		+ "はひふへほまみむめもやゆよらりるれろわをん"
		+ "がぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽ"
		+ "ぁぃぅぇぉっゃゅょゎゐゑヴヵヶー　";

	for(i=0; i<txt.length; i++){
		if(kana.indexOf(txt.charAt(i),0) == -1){
			return false;
			break;
		}
	}
	return true;
}

/********************************************************************************/
/*半角チェック関数																*/
/*半角以外の文字が含まれるとfalseを返す											*/
/*引数																			*/
/* txt…検査したい文字列(string型)												*/
/********************************************************************************/
function hankk_check(txt){
	var cnt_i;
	for(i=0; i<txt.length; i++){
		if(escape(txt.charAt(i)).length<4){
			return false;
			break;
		}
	}
	return true;
}

/********************************************************************************/
/*半角カナチェック関数															*/
/*半角カナの文字が含まれるとfalseを返す											*/
/*引数																			*/
/* txt…検査したい文字列(string型)												*/
/********************************************************************************/
function skana_check(txt){
var kana = "ｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉ"
		+ "ﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾗﾘﾙﾚﾛﾜｦﾝ"
		+ "ﾞﾟｧｨｩｪｫｯｬｭｮ";

	for(i=0; i<txt.length; i++){
		if(kana.indexOf(txt.charAt(i),0) != -1){
			return false;
			break;
		}
	}
	return true;
}

/********************************************************************************/
/*文字列検索関数																*/
/*文字列の字列の長さを数値で返す。												*/
/*全角２文字、半角１文字として計算												*/
/*引数																			*/
/* txt…検査したい文字列(string型)												*/
/********************************************************************************/
function lench(txt){
	var strlen=0;
	for (var i = 0, n = txt.length; i < n; i++){
		strlen += txt.charCodeAt(i) > 0xff ? 2 : 1;
	}
	return strlen;
}

/********************************************************************************/
/*Trim関数																		*/
/*文字列の前後の半角空白及び全角空白を取り除いた文字列を取得する				*/
/*引数																			*/
/* txt…検査したい文字列(string型)												*/
/********************************************************************************/
function trim(txt){
	txt = txt.replace(/ /g,"");
	txt = txt.replace(/　/g,"");
	return txt;
}

/********************************************************************************/
/*ドロップダウン選択関数														*/
/*ドロップダウン型の入力項目で選択しているかをチェックする。					*/
/*引数																			*/
/* obj…検査したい項目(object型)												*/
/* hash…Alertメッセージ後の移動場所(string型)									*/
/*		<A NAME="#Q01">へ移動の場合「Q1」をセット								*/
/* msg…選択してない場合のメッセージ(string型)									*/
/********************************************************************************/
function SelectCh(obj,hash,msg)
{
	if(obj.selectedIndex == 0){
		alert(msg + "を選択してください。");
		location.hash = hash;
		obj.focus();
		return false;
	}
	return true;
}

/********************************************************************************/
/*ラジオボタン・チェックボックス入力チェック関数								*/
/*ラジオボタン・チェックボックの入力項目で選択しているかをチェックする。		*/
/*引数																			*/
/* obj…検査したい項目(object型)												*/
/* hash…Alertメッセージ後の移動場所(string型)									*/
/*		<A NAME="#Q01">へ移動の場合「Q1」をセット								*/
/* msg…選択してない場合のメッセージ(string型)									*/
/********************************************************************************/
function RadioCheckCh(obj,hash,msg)
{
	flg = false;
	for(var i=0 ;i<obj.length;i++){
		if(obj[i].checked){
			flg = true;
			break;
		}
	}
	if(!flg){
		alert(msg + "を選択してください。");
		location.hash = hash;
		obj[0].focus();
		return false;
	}
	return true;
}

function txtChk(obj,msg,hash,func,len,flg)
{
	if(flg != "")
	{
		if(!trim(obj.value)){
			alert(msg + "をご入力下さい。");
			location.hash = hash;
			obj.focus();
			return false;
		}
	}

	if(func == "skana"){
		if(!skana_check(obj.value)){
			alert(msg + "において半角カナ以外を入力してください。");
			location.hash = hash;
			obj.focus();
			return false;
		}
	}else if(func == "number_check"){
		if(!number_check(obj.value)){
			alert(msg + "において数値を入力してください。");
			location.hash = hash;
			obj.focus();
			return false;
		}
	}else{
	}
	if(len > 0){
		if(lench(obj.value) > len*2){
			alert(msg + "において全角 " + len + " 字以内で入力してください。");
			location.hash = hash;
			obj.focus();
			return false;
		}
	}
	return true;
}
