function search_number() {
	if ((validateRequired(document.Jbch030303Form) && validateHanEiSu(document.Jbch030303Form)) != 1) {
		return;
	}
	var no_f = document.getElementById("navi_05_text").value;
	var no_b = document.getElementById("navi_03_text").value;
	var msg = "";
	if (getlength(no_f) > 2) {
		msg = "お仕事No.前は、半角2文字以内で入力してください。";
	}

	if (getlength(no_b) > 6) {
		msg = msg + "\n" + "お仕事No.後は、半角6文字以内で入力してください。";
	} 

	if (msg != "") {
		alert(msg);
		return;
	}

	document.Jbch030303Form.jobno.value = no_f + "-" + no_b;
	document.Jbch030303Form.search_number_flg.value = "1";
	document.Jbch030303Form.action=document.Jbch030303Form.search_action.value;
	document.Jbch030303Form.submit();
}

function Jbch030303Form_required () { 
    this.a0 = new Array("jobno_f", "お仕事No.前は必須入力です。", new Function ("varName", " return this[varName];"));
    this.a1 = new Array("jobno_b", "お仕事No.後は必須入力です。", new Function ("varName", " return this[varName];"));
} 

function Jbch030303Form_haneisu () { 
    this.a0 = new Array("jobno_f", "お仕事No.前は、半角英数字で入力してください。", new Function ("varName", " return this[varName];"));
    this.a1 = new Array("jobno_b", "お仕事No.後は、半角英数字で入力してください。", new Function ("varName", " return this[varName];"));
} 

function validateRequired(form) {
    var isValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    var formName = form.getAttributeNode("name");

    oRequired = eval('new ' + formName.value + '_required()');

    for (x in oRequired) {
        var field = form[oRequired[x][0]];

        if ((field.type == 'hidden' ||
            field.type == 'text' ||
            field.type == 'textarea' ||
            field.type == 'file' ||
            field.type == 'checkbox' ||
            field.type == 'select-one' ||
            field.type == 'password') &&
            field.disabled == false) {

            var value = '';
            // get field's value
            if (field.type == "select-one") {
                var si = field.selectedIndex;
                if (si >= 0) {
                    value = field.options[si].value;
                }
            } else if (field.type == 'checkbox') {
                if (field.checked) {
                    value = field.value;
                }
            } else {
                value = field.value;
            }

            if (trim(value).length == 0) {

                if (i == 0) {
                    focusField = field;
                }
                fields[i++] = oRequired[x][1];
                isValid = false;
            }
        } else if (field.type == "select-multiple") { 
            var numOptions = field.options.length;
            lastSelected=-1;
            for(loop=numOptions-1;loop>=0;loop--) {
                if(field.options[loop].selected) {
                    lastSelected = loop;
                    value = field.options[loop].value;
                    break;
                }
            }
            if(lastSelected < 0 || trim(value).length == 0) {
                if(i == 0) {
                    focusField = field;
                }
                fields[i++] = oRequired[x][1];
                isValid=false;
            }
        } else if ((field.length > 0) && (field[0].type == 'radio' || field[0].type == 'checkbox')) {
            isChecked=-1;
            for (loop=0;loop < field.length;loop++) {
                if (field[loop].checked) {
                    isChecked=loop;
                    break; // only one needs to be checked
                }
            }
            if (isChecked < 0) {
                if (i == 0) {
                    focusField = field[0];
                }
                fields[i++] = oRequired[x][1];
                isValid=false;
            }
        }
    }
    if (fields.length > 0) {
       focusField.focus();
       alert(fields.join('\n'));
    }
    return isValid;
}

function validateHanEiSu(form) {

    var bValid = true;
    var i = 0;
    var j = 0;
    var focusField = null;
    var fields = new Array();
	var formName = form.getAttributeNode("name");
	oHanEiSu = eval('new ' + formName.value + '_' + 'haneisu()');
    
    for (x in oHanEiSu) {
        var field = form[oHanEiSu[x][0]];

        if (field.type == 'text' ||
            field.type == 'textarea' ) {

            var value;
            value = field.value;  // get field's value

            for (i = 0; i < value.length; i++) {
                var c = value.charCodeAt(i);

                if (!(c >= 0x0030 && c <= 0x0039) && !(c >= 0x0041 && c <= 0x005A) && !(c >= 0x0061 && c <= 0x007A)) {
                    if (j == 0) {
                        focusField = field;
                    }
                    fields[0] = oHanEiSu[x][1];
                    bValid = false;

                }
            }
        }
    }

    if (fields.length > 0) {
        focusField.focus();
        alert(fields.join('\n'));
    }
    return bValid;

}

function trim(s) {
    return s.replace( /^\s*/, "" ).replace( /\s*$/, "" );
}
