
function _SerializeForm(parentElementId)
{
    var strError="";
    var strResult="";
    var parent=$(parentElementId);
    if(parent!=null)
    {
        var _elements = parent.getElementsByTagName("input");
        var count = _elements.length;
        var element;
        for (var i = 0; i < count; i++) 
        {
            element=_elements[i]
            var type = element.type;
            if ((type == "text" || type == "hidden" || type == "password" || type=="file" ||
                ((type == "checkbox" || type == "radio") && element.checked))) 
            {
                var name;
                if(element.id=="")
                    name=element.name;
                else
                    name=element.id;
                //strResult+="&" + name + "=" + uriEncode(element.value);
                strError+=_CheckInput(element,element.value);
                strResult+="<param id='"+name+"'>"+uriEncode(element.value)+"</param>";
            }
        }
        var _selectElements = parent.getElementsByTagName("select");
        var _selectCount=_selectElements.length;
        var selectElement;
        for(i=0;i<_selectCount;i++)
        {
            selectElement=_selectElements[i];
            var optionCount = selectElement.options.length;
            var value="";
            for (var j = 0; j < optionCount; j++) 
            {
                var selectChild = selectElement.options[j];
                if (selectChild.selected == true) 
                {
                    //strResult+="&"+selectElement.id+"="+uriEncode(selectChild.value);
                    var selectValue=selectChild.value;
                    if (selectValue=="")
                    {
                        selectValue=selectChild.text;
                    }
                    value+=selectValue+",";
                }

            }
            if(value!="")
                value=value.substring(0,value.length-1);
             strError+=_CheckInput(selectElement,value);
             strResult+="<param id='"+selectElement.id+"'>"+uriEncode(value)+"</param>"; 
                        
        }
        var _textElements = parent.getElementsByTagName("textarea");
        var _textCount=_textElements.length;
        var textElement;
        for(i=0;i<_textCount;i++)
        {
            textElement=_textElements[i]; 
            //strResult+="&"+textElement.id+"="+uriEncode(textElement.innerText);
            strError+=_CheckInput(textElement,textElement.innerText);
           strResult+="<param id='"+textElement.id+"'>"+uriEncode(textElement.innerText)+"</param>";     
        }
    }
    //alert(strResult);
    if(strError=="")
    {
        return uriEncode(strResult);
    }
    else
    {
        alert(strError);
        return "<<<CHECKNOTPASS>>>";
    }

}


//<input type='text' chk='' msg=''/>
function _CheckInput(ele,value)
{
    var Usage = {
		"int":"^([+-]?)\\d+$",											
		"int+":"^([+]?)\\d+$",											
		"int-":"^-\\d+$",												
		"num":"^([+-]?)\\d*\\.?\\d+$",									
		"num+":"^([+]?)\\d*\\.?\\d+$",									
		"num-":"^-\\d*\\.?\\d+$",										
		"float":"^([+-]?)\\d*\\.\\d+$",									
		"float+":"^([+]?)\\d*\\.\\d+$",									
		"float-":"^-\\d*\\.\\d+$",										
		"email":"^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$",	
		"color":"^#[a-fA-F0-9]{6}",										
		"url":"^http[s]?:\\/\\/([\\w-]+\\.)+[\\w-]+([\\w-./?%&=]*)?$",	
		"chinese":"^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$",				
		"ascii":"^[\\x00-\\xFF]+$",										
		"zipcode":"^\\d{6}$",											
		"mobile":"^0{0,1}13[0-9]{9}$",									
		"ip4":"^\(([0-1]?\\d{0,2})|(2[0-5]{0,2}))\\.(([0-1]?\\d{0,2})|(2[0-5]{0,2}))\\.(([0-1]?\\d{0,2})|(2[0-5]{0,2}))\\.(([0-1]?\\d{0,2})|(2[0-5]{0,2}))$",				//ipµØÖ·
		"notempty":"^[^ ]+$",											
		"picture":"(.*)\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$",	
		"rar":"(.*)\\.(rar|zip|7zip|tgz)$",								
		"date":"^\\d{4}(\\-|\\/|\.)\\d{1,2}\\1\\d{1,2}$"
	};
    var check=ele.getAttribute("chk");
    var message=ele.getAttribute("msg");
    if(Usage[check]!=null)
    {
        check=Usage[check];
    }
    if((check)||(message))
    {
        var reg=new RegExp(check,"i");
        if(reg.test(value))
        {
            return "";
        }
        else
        {
            return message+"\n";
        }
    }
    else
    {
        return "";
    }
}