jq ajax

阅读更多

注意:如果ajax请求时参数中有中文,哪么get会出现乱码,使用post可解决

 

1:绑定事件调用ajax

 

Js代码   收藏代码
  1. $(document).ready(function() {  
  2.             $('#example').dataTable();  
  3.             $('#channelBandwidth').click( function() {  
  4.                 $.ajax({  
  5.                                          ContentType:'application/x-www-form-urlencoded',                    type:'get',//可选get  
  6.                       url:'${projectPath}/test',  
  7.                       data:'data=3',//传给PHP的数据,多个参数用&连接  
  8.                       dataType:'text',//服务器返回的数据类型 可选XML ,Json jsonp script htmltext等  
  9.                       success:function(msg){  
  10.                       alert(msg);  
  11.                       },  
  12.                       error:function(){  
  13.                       alert('error');  
  14.                       }  
  15.             })})  
  16.         });  

2:后台使用spring mvc传值

Java代码   收藏代码
  1. @RequestMapping("/test")  
  2. public String gettset(HttpServletRequest request,    
  3.         HttpServletResponse response) throws Exception {    
  4.     response.setContentType("text/plain" + ";charset=UTF-8");  
  5.     response.setHeader("Pragma""No-cache");  
  6.     response.setHeader("Cache-Control""no-cache");  
  7.     response.setDateHeader("Expires"0);  
  8.     response.getWriter().write("aaa");  
  9.     response.getWriter().flush();  
  10.     return null;    
  11. }    

 如果要传多个数据可用json

data:{"channelType":$('#channelType').val(),"channel":$('#channel').val(),"day":$('#day').val(),"startTime":$('#startTime').val(),"endTime":$('#endTime').val(),"database":$('#database').val()},

 

使用其它格式返回(@ResponseBody 直接返回body)

Java代码   收藏代码
  1. @RequestMapping("/update")  
  2. public @ResponseBody  
  3. Map updateBandwidth(@ModelAttribute SearchBean searchBean) {  
  4.     Map map = new HashMap();  
  5.     try {  
  6.         bandwidthService.upBandwidth(searchBean);  
  7.         String jo = bandwidthService.getBandwidth(searchBean);  
  8.         map.put("status""ok");  
  9.         map.put("msg", jo);  
  10.     } catch (UpdateDataBasesException e) {  
  11.         logger.error(e.getMessage());  
  12.         map.put("status""no");  
  13.         map.put("msg""更新数据失败,请到操作记录页重新操作");  
  14.     }  
  15.     return map;  
  16. }  

 前台页面ajax使   dataType:‘json’

 

3:spring mvc 前台ajax传值给后台,前台传值为数组,数组中为对象

前台

Js代码   收藏代码
  1. function submit_alarmmessage(){  
  2.     var alarmmessage_list=new Array();   
  3.     if($('#sms').attr("checked")=="checked"){  
  4.         var tempObj=new Object();  
  5.         tempObj.id=$('#sms_id').val();  
  6.         tempObj.cc='';  
  7.         tempObj.received=$('#smsaddress').val();  
  8.         tempObj.enable='1';  
  9.         tempObj.message_type='SMS';  
  10.         alarmmessage_list.push(tempObj);  
  11.     }     
  12.     if($('#email').attr("checked")=="checked"){  
  13.         var tempObj=new Object();  
  14.         tempObj.id=$('#email_id').val();  
  15.         tempObj.received=$('#emailaddress').val();  
  16.         tempObj.cc=$('#emailcc').val();  
  17.         tempObj.enable='1';  
  18.         tempObj.message_type='EMAIL';  
  19.         alarmmessage_list.push(tempObj);  
  20.     }      
  21.     $.ajax({     
  22.         type:'post',//可选get     
  23.         url:'${projectPath}/alarmsystemalarmmesupdate',  
  24.         data:$.toJSON(alarmmessage_list),  
  25.       contentType: "application/json; charset=utf-8",  
  26.         dataType:'text',//服务器返回的数据类型 可选XML ,Json jsonp script htmltext等     
  27.         success:function(msg){     
  28.               },     
  29.         error:function(XMLHttpRequest, textStatus, errorThrown){    
  30.               }  
  31. })  
  32. }  

 数组格式

[{"id":"6","cc":"","received":"1881","enable":"1","message_type":"SMS"},{"id":"3","received":"[email protected]","cc":"[email protected]","enable":"1","message_type":"EMAIL"}]

 

后台接收

Java代码   收藏代码
  1. @RequestMapping("/alarmsystemalarmmesupdate")  
  2.     public @ResponseBody  
  3.     String updateAlarmMessage(@RequestBody List alarmmessage_list) {  
  4.         return null;      
  5.     }  

 参考:

http://bbs.csdn.net/topics/390123483

http://what-is-javascript.iteye.com/blog/1735691

http://ljhzzyx.blog.163.com/blog/static/383803122013115114544562/

http://blog.csdn.net/c5906343/article/details/26482975

 

 

本文转载直:http://692088846.iteye.com/blog/1997779

你可能感兴趣的:(JavaScript,Web前端,JQuery)