﻿/*
* 功能:通用验证所有的表单元素.
*    <form name="form1" onsubmit="return CheckForm(this)">
*    <input type="text" name="id" check="^S+$" warning="id不能为空,且不能含有空格">
*    </form>
*/
//主函数
function CheckForm(oForm){
    var els=oForm.elements;
    for(var i=0;i<els.length;i++){
        if(els[i].getAttribute('check') && els[i].disabled==false){
            var sReg=els[i].getAttribute("check");var sVal=GetValue(els[i]);var reg=new RegExp(sReg,"i");
            if(!reg.test(sVal)){
				$.msgbox({height:130,width:240,content:'<center style=color:#F00>'+els[i].getAttribute("warning")+'</center>',type :'alert'});
                return false;
            }
        }
    }
}
function GetValue(el){
    var sType=el.type;
    switch(sType){
        case "text":
        case "hidden":
        case "password":
        case "file":
        case "textarea":return el.value;
        case "checkbox":
        case "radio":return GetValueChoose(el);
        case "select-one":
        case "select-multiple":return GetValueSel(el);
    }
    function GetValueChoose(el){
        var sValue="";var tmpels=document.getElementsByName(el.name);
        for(var i=0;i<tmpels.length;i++){if(tmpels[i].checked){sValue+="0";}}
        return sValue;
    }
    function GetValueSel(el){
        var sValue="";
        for(var i=0;i<el.options.length;i++){if(el.options[i].selected && el.options[i].value!=""){sValue+="0";}}
        return sValue;
    }
}
function GoBack(el){
    var sType=el.type;
    switch(sType){
        case "text":
        case "hidden":
        case "password":
        case "file":
        case "textarea":el.focus();var rng=el.createTextRange(); rng.collapse(false); rng.select();
        case "checkbox":
        case "radio":var els=document.getElementsByName(el.name);els[0].focus();
        case "select-one":
        case "select-multiple":el.focus();
    }
}
