国际化Alert与confirm Jquery自定义方法

   为了处理国际化alert与confirm中英提示框的问题,即如果当前语言为中文的话提示为中文信息,当前语言为英文提示为英文信息,我选择了Jquery自定义方法解决此问题。
一、 在Jquery1.3.2.js中增加如下代码
jQuery.extend({
/**
	 * @author Jacky
	 * @param bathPath
	 * @param key
	 *            资源文件中的key
	 * @param resSimpleName
	 *            资源文件的简称 BookAirResources 取 BookAir
	 * @param values
	 *            参数传递是一个数组 new Object[]={...}
	 * 
	 */
	alertMessageResource:function(bathPath,key,resSimpleName,values){
		if(null==bathPath||bathPath=='<%=bathPath%>'){
			bathPath = (null==getURL()||''==getURL())?document.location.href:getURL();
		} 
		jQuery.ajax({
			type: "POST",
			url: bathPath+"/loaclAction.do?method=getMessageResource",
			data: { 
			  key : key,
			  bundle : resSimpleName,
			  values : (null == values) ? null : values
			 },
			 success: function(msg){
				if( null != msg && "" != msg){
						alert(msg);
				}else{
						alert("Warning! No"+ key +"In "+resSimpleName+"Resources");
				}
			},
			dataType: "html"
		});
	}
	,
	/**
	 * @author Jacky
	 * @param bathPath
	 * @param key
	 *            资源文件中的key
	 * @param resSimpleName
	 *            资源文件的简称 BookAirResources 取 BookAir
	 * @param values
	 *            参数传递是一个数组 new Object[]={...}
	 * @callback 回调方法 点击确定时要做调用方法
	 * 
	 */
	confirmMessageResource:function(bathPath,key,resSimpleName,values,callback){
		if(null==bathPath||bathPath=='<%=bathPath%>'){
			bathPath = (null==getURL()||''==getURL())?document.location.href:getURL();
		} 
		  jQuery.ajax({
			type: "POST",
			url: bathPath+"/loaclAction.do?method=getMessageResource",
			data: { 
			  key : key,
			  bundle : resSimpleName,
			  values : (null == values) ? null : values
			 },
			 success: function(msg){
				if( null != msg && "" != msg){
						if(confirm(msg)){
							jQuery(callback);	
						}
				}else{
						callback=confirm("Warning! No"+ key +"In "+resSimpleName+"Resources");
						jQuery(callback);
				}
			},
			dataType: "html"
		});
	}
});

/**
 * 得到当前请求的URL
 * @author Jacky
 */
function getURL(){
	var resultURL;
	var urlStr = document.location.href;
	urlStr=urlStr.substring(0,urlStr.indexOf('?'));
	resultURL=urlStr.substring(0,urlStr.lastIndexOf('/'));
	return resultURL;
}


二、使用Jquery自定义方法
//引入JS:
<script language="javascript" src="<%=basePath%>/js/jquery/jquery.js"></script>
//alert使用
$.alertMessageResource('msg.c_domesticairquery.dateinfo','Message',null);
//confirm的使用
$.confirmMessageResource('msg.c_domesticairquery.dateinfo','Message',null,getConfirm);
function getConfirm(){
   alert("sssssssss");
}





你可能感兴趣的:(JavaScript,jquery,C++,c,Ajax)