if(typeof(jslib.ajax.form) == 'undefined'){
	jslib.namespace("jslib.ajax.form");
	jslib.ajax.form.__get_item_value =  function(o){
		if(o.disabled || !o.name)return null;
		if(o.type == 'reset' || o.type == 'image')return null;
		if(o.type == 'checkbox' || o.type == 'radio'){
			if(!o.checked)return null;
		}
		return encodeURIComponent(o.name) + '=' + encodeURIComponent(o.value);
	}
	jslib.ajax.form.submit = function(form, completed, error){
		var form = jslib.$(form);
		if(form){
			var values = [];
			for(var i=0; i<form.elements.length; i++){
				var v = jslib.ajax.form.__get_item_value(form.elements[i]);
				if(v != null)values.push(v);
			}
			var data = values.join('&');
			var url = form.action || self.location.href;
			if(url == '?')url = self.location.href;
			var method = form.method || "POST";
			if(method.toUpperCase() == "GET"){
				if(url.indexOf('?') != -1){
					url += '&';
				}else{
					url += '?';
				}
				url += data;
				data = null;
			}
			jslib.ajax.load({url:url,method:method,data:data,contentType:'application/x-www-form-urlencoded'},completed, error);			
		}
		return false;
	}
}
