前台往后台傳值呢,有很多種方式,大家聽我細細道來。
第一種呢,也是最簡單的一種,通過get提交方式,將參數在鏈接中以問號的形式進行傳遞。
// 前台傳值方法 // 觸發該方法調用ajax function testAjax(yourData) { $.ajax({ type: "get", // 以get方式發起請求 url: "/yourUrl?yourDataName=" + yourData, // 將你的請求參數以問號拼接到url中進行參數傳遞 success(data) { // data為返回值 // 成功后的回調方法 } }) }
// 后台接值方法 @RequestMapping("/yourUrl") @ResponseBody // @RequestParam("yourData")是必不可少的,因為他指定了鏈接中的參數名稱 public String yourUrl(@RequestParam("yourData") String yourData) { System.out.println(yourData); // 返回值可以自由定義 return "SUCCESS"; }
第二種呢,是將參數體現到鏈接中,在后台通過占位進行傳遞。
// 前台傳值方法,其實大體與上方相同只需注意url即可 // 觸發該方法調用ajax function testAjax(yourData) { $.ajax({ type: "get", // 以get方式發起請求 url: "/yourUrl/"+yourData, // 將你的請求參數拼接到url中進行參數傳遞 success(data) { // data為返回值 // 成功后的回調方法 } }) }
// 后台接值方法 @RequestMapping("/yourUrl/{yourDataName}") @ResponseBody // 同樣@PathVariable("yourDataName")必不可少,因為他指定鏈接中某個位置代表着名為yourDataName的變量 public String yourUrl(@PathVariable("yourDataName") String yourData) { System.out.println(yourData); // 返回值可以自由定義 return "SUCCESS"; }
第三種呢,通過post提交方式將form表單中的數據序列化后傳遞到后台。
// 前台傳值方法 function testAjax() { $.ajax({ type: "post", // 以post方式發起請求 url: "/yourUrl", // 你的請求鏈接 data:$("#myForm").serialize(), // 對id為myForm的表單數據進行序列化並傳遞到后台 success(data) { // data為返回值 // 成功后的回調方法 } }) }
// 后台接值方法 @RequestMapping("/yourUrl") @ResponseBody // 在這里我假設大家表單數據與User實體類相對應 public String yourUrl(User user) { System.out.println(user.toString()); return "SUCCESS"; }
第四種呢,就是Ajax異步傳值最常見 的在ajax方法體中使用data進行傳值。
// 前台傳值方法 function testAjax() { $.ajax({ type: "post", // 以post方式發起請求 url: "/yourUrl", // 你的請求鏈接 data: { // 提交數據 "username": "admin", // 前者為字段名,后者為數據 "password": "admin" }, success(data) { // data為返回值 // 成功后的回調方法 } }) }
// 后台接值方法 @RequestMapping("/yourUrl") @ResponseBody // 在這里我假設大家表單數據與User實體類相對應 public String yourUrl(@RequestParam("username") String username, @RequestParam("password") String password) { System.out.println("username="+username+";password="+password); return "SUCCESS"; }
原文摘自:https://www.cnblogs.com/smfx1314/p/10205736.html