将ajax数据发布到spring控制器

阿塞拉·维耶辛格

我是AJAX的新手,我正尝试配置一种简单的方法以仅使用ajax将数据发布到使用ajax的控制器中JSONlambda expressions除非Java有人可以告诉我我做这种ajax方法的错误是什么不管用?

控制器

@RequestMapping(value = "/test", method = RequestMethod.GET)
public String addCart(int val1, int val2) {
    System.out.println("+++++++++++++++++++++++++++++" + val1);
    System.out.println("+++++++++++++++++++++++++++++" + val2);

    return "redirect:/viewResult";

}

Ajax /脚本

 $(document).on('change', '._someDropDown', function (e) {
       var x = this.options[e.target.selectedIndex].text;
       var y = $(this).data('idtest');
       alert(x);
       alert(y);

   $.ajax(
        {
         url: "/HRS/test",
         data: {val1: x, val2: y},
         method: 'POST'
         });
  });

请注意这些警报(x和y值)正确显示。我只想将它们发送到控制器。请提出任何建议?

AgentX

首先,您需要使您的AJAX代码将发送的Controller接受POST Request

然后,您需要在希望从AJAX接受的POJO上添加一个RequestBody注释。

假设您需要发送var x, y创建一个这样的类:

public class MyData {
  String x;
  String y;
  // getters/setters/constructor
}

然后,您需要在AJAX调用中创建MyData并传递它。

 $(document).on('change', '._someDropDown', function (e) {
 var myData = {
  "x" : this.options[e.target.selectedIndex].text,
  "y" :$(this).data('idtest')
 }
 .ajax({
  type: "POST",
  contentType : 'application/json; charset=utf-8',
  dataType : 'json',
  url: "/HRS/test", //assuming your controller is configured to accept requests on this URL
  data: JSON.stringify(myData), // This converts the payLoad to Json to pass along to Controller
  success :function(result) {
   // do what ever you want with data
 }
});

最终,您的控制器将变得像:

@RequestMapping(value = "/test", method = RequestMethod.POST)
public @ResponseBody String addCart(@RequestBody MyData data) {
  System.out.println(data.getX());
  System.out.println(data.getY());

  return something;
}

我的知识有些生锈,但是我希望您知道这是如何工作的!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Ajax将文件和表单数据一起发布到MVC控制器?

ASP.NET 5 / MVC 6 Ajax将模型发布到控制器

如何使用AJAX将数据发布到ASP.NET MVC控制器?

使用AJAX将表单数据发布到Fw / 1(Coldfusion)控制器功能

多个ajax数据到Spring MVC控制器

使用Ajax将表单数据发布到控制器方法

如何通过JQuery ajax调用将dataTable的选定行的数据发布到php控制器

JQUERY ajax将JSON发布到C#MVC控制器,但是传入的数据为null

通过ajax发布到控制器的模型为空

如何在API中使用Ajax将Laravel表单数据发布到控制器

Laravel Ajax表单数据未发布到控制器

Laravel中的AJAX函数未将表单数据发布到控制器

使用AJAX将传递参数发布到Rails控制器

Laravel无法将数据发布到控制器

从局部视图到控制器的ajax发布为null

无法通过AJAX将数据发布到Grails中的控制器的Action中

使用Ajax将JSON数据发布到MVC控制器

Ajax发布不会将任何数据传递到MVC控制器

使用jquery ajax发布到CakePHP控制器

将数组和表单数据发布到控制器-MVC Ajax

使用AJAX将数据发布到控制器不起作用,Code Igniter

Ajax中的日期将数据发布到MVC控制器

Ajax将数据发布到Codeigniter控制器中,但是它显示一个空数组,而不是将数据显示到数组列表中

ajax不会将文件发布到控制器mvc

Ajax 发布到控制器 404

MVC,如何将数据发布到控制器并重定向到 aspx 页面

将 AJAX 字符串发布到 MVC 控制器

使用 Ajax 将数据从视图传递到控制器

将数据从 DropDownList 发布到 MVC 控制器