web开发常用的东东备份-使用jQquery+CSS实现国际化转换

JSP的代码

<div class="language">
      <a id="ch" <%if (Locale.US.equals(session.getAttribute("locale"))) {%>
     href="#" <%} else {%> class="ok" <%}%>>中文</a>
      <a id="en"<%if (Locale.US.equals(session.getAttribute("locale"))) {%>
     class="ok" <%} else {%> href="#" <%}%>>English</a>
  </div>

 

JS代码

/***先找到class=language下的a标签,然后绑定click事件,function是是处理click事件的逻辑***/

$(".language a").bind("click", function(e) {
  var loc = "";
  if ($(this).attr("id") == "ch") {/**获取id的值是en还是ch**/
   loc = "zh_CN";
  }
  if ($(this).attr("id") == "en") {
   loc = "en_US";
  }
  $.ajax({/**利用Ajax调用异步请求,**/
    url : vdi_base + "/sys/changeLanguage.do",
    data : {locale:loc},
    cache:false,
    ifModified :true,
    success : function(rs) {
     window.location.reload();
    }
  });
 });

 

Controller的处理 ,参考版的java代码

@Controller
@RequestMapping("/sys/*")
public class LoginController {

@RequestMapping
 @ResponseBody
 public String changeLanguage(HttpServletRequest request,  HttpServletResponse response) {
  String lang = request.getParameter("locale");
  if ( lang != null) {
   HttpSession session = request.getSession();
   if (null != session) {
    if ("zh_CN".equals(lang)) {
     session.removeAttribute("locale");
     session.setAttribute("locale", Locale.SIMPLIFIED_CHINESE);
    }  else if ("en_US".equals(lang)) {
     session.removeAttribute("locale");
     request.getSession().setAttribute("locale", Locale.US);
    }
   }
   return "success";
   } else {
   return "lang is null";
   }
 }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值