搜索
您的当前位置:首页正文

前后台交互

来源:二三娱乐

一种是ajax,另外一种就是form表单的action方法写后台接受数据的方法。

其中ajax能实现局部刷新,而form表单却需要页面跳转,无法做到ajax的异步功能。

form表单有个优点是所有name的 input标签中的数据 都会传到后台,而ajax却需要每个获取要传送的数据,但是最近发现一个serialize方法 能让ajax获取到所有input表签的数据,避免重复代码。

function testAjax() {
 
    varusers=[{name:'张三',   age:'21', birth:'1994-12-12'},
              {name:'李四',   age:'20', birth:'1995-12-11'},
              {name:'wangwu', age:'20', birth:'1995-12-11'}];
 
    $.ajax({
 
        type:'POST',
 
        data:JSON.stringify(users),
 
        contentType :'application/json',
 
        dataType:'json',
    
        url :'user/saveJsonUser.do',
 
        success :function(data) {
 
            alert("OK");
 
        },
 
        error :function(e) {
 
            alert("error");
 
        }
 
    });
 
}

后台处理

public Map saveJsonUser(@RequestBody User[]users){  
  
    for(Useru:users){  
   
        System.out.println(u.getName()+"  "+u.getAge()+"  "+u.getBirth());  
  
    }  
  
    Map result=newHashMap();  
  
    result.put("success","123");  
  
    return result;  
  
}
jQuery.ajax({
       url: "$url_rest_edit",
       data:jQuery("#theform").serialize(),
       type: "POST",
       async:false,
       cache:false,
       success:function(data) {
            try {
                if(data=='操作成功') {
                    alert("操作成功"); //发送短信后提醒
                    window.location.href = '/f/v/objlist?clsid=qbeee9b0375e11e6a93050e5498642a3&pagid=qaee6240376111e69a2050e5498642a3';
                } else {
                    alert(data);
                }
            } catch(e) {
                alert(data+' '+e.name+':'+e.message);
            }
       }
    });
Top