
/**
 * AJAX请求调用的函数
 * @param url ajax请求的url
 * @param onCompleteFun ajax请求完成之后调用的函数名称
 * @param onFailureFun ajax请求失败调用的函数
 * @param params ajax请求的字符串列表，格式如：A=1&B=2
 * @param asynFlag 异步标志,true or false,缺省为true异步执行
 * @return 无返回值
 */
function ajaxRequest(rurl,onCompleteFun,onFailureFun,param,async,request_type)
{
	if(!param)
	{
		param = "";
	}
	if (!async)
	{
		async=false;
	}
	if(!request_type){
		request_type = "AJAX_REQUEST";
	}
	var res=jQuery.ajax
		({
			async: async,
			type: "POST",
			url: rurl,
			contentType: "application/x-www-form-urlencoded;charset=UTF-8",
			data: param,
			dataType:'json',
			beforeSend: function(xhr) {xhr.setRequestHeader("__REQUEST_TYPE", request_type);},
			success: eval(onCompleteFun),
			error: eval(onFailureFun)
		});
	try{
		res = jQuery.httpData( res, 'json' );
	} catch(e){
	
	}
	return res;
}
/**
 * AJAX请求调用的函数,该函数可以把form内部的所有可提交变量全部提交到后台
 * @param url ajax请求的url
 * @param onCompleteFun ajax请求完成之后调用的函数名称
 * @param onFailureFun ajax请求失败调用的函数
 * @param form ajax请求form表单对象
 * @param asynFlag 异步标志,true or false,缺省为true异步执行
 * @return 无返回值
 */
function ajaxFormRequest(rurl,onCompleteFun,onFailureFun,form,async,request_type)
{
	var param = getQueryStrFomForm(form);
	return ajaxRequest(rurl,onCompleteFun,onFailureFun,param,async,request_type);
}

/**
 * 处理系统的提示和异常信息，并提示出来。
 * @param returnobj ajax返回的信息
 * @return 返回是否有系统提示或者异常
 */
function dealSystemInfo(returnobj)
{
	var jdg = false;
	var msg = "";
	if(returnobj.__WARNMSGS != undefined)
	{
		for(i=0;i<returnobj.__WARNMSGS.length;i++)
	 	{
	 		var tmp = returnobj.__WARNMSGS[i].__WARNMSG;
	 		jdg = false;
	 		if(msg == ""){
	 			msg = tmp;
	 		}else{
	 			msg = msg + "\r\n"+tmp;
	 		}
		}
	}
	if(returnobj.__ERRORMSG != undefined)
	{
		jdg = true;
		if(msg == ""){
	 		msg = returnobj.__ERRORMSG;
	 	}else{
	 		msg = msg + "\r\n"+returnobj.__ERRORMSG;
	 	}
	}
	if(msg != ""){
		alert(msg);
	}
	return jdg;
}
/**
 * 对传入ajax的uri地址进行编码
 * @param inputValue 输入的url地址
 * @return 编码之后的url
 */
function encodeUrl(inputValue)
{
	return encodeURI(encodeURI(inputValue));
}
