当前位置: 首页 > 面试题库 >

如何使用ajax调用将对象传递给控制器

赫连智
2023-03-14
问题内容

我想将一个对象传递给控制器​​,并在控制器中检索值。我定义如下:

HTML代码:

 var positionarray = [];

Javascript:

 $("#button").live('click',function(){
     positionarray.push({
         id: sessionStorage.getItem('id'),
         value: $("#input").val() 
     });
 });

 // on save button click
 $.ajax({
       type: "GET",                                                 
       url:"/Bugs/Position",                                                 
       data: {
           array:positionarray      
       },
       cache: false,
       dataType: "json",
       contentType: "application/json; charset=utf-8",
       success: function (json) {

       }
 });

但是我无法在控制器中检索值。它越来越空。


问题答案:

尝试以下操作:-您正在传递对象数组,因此您应该执行HTTPPost而不是HttpGet(这将适用于通过查询字符串发送它的原始类型数组,例如int,strgin等列表)(请记住查询字符串的限制)。尝试使用HTTPPost

 $.ajax({
       type: "POST",                     
       url:"Home/Position",                                                 
       data: JSON.stringify({
              array: positionarray
       }),
       cache: false,
       dataType: "json",
       contentType: "application/json; charset=utf-8",
       success: function (json) {

       }

[HTTPPost]
public void Position(YourClass[] array){...


 类似资料:
  • 问题内容: 如何将ID从此Ajax调用传递给TestController getAjax()函数?当我打电话时,网址是testUrl?id = 1 TestController.php 问题答案: 最后,我只是将参数添加到Route :: get()以及ajax url调用中。我在getAjax()函数中将$ _POST [‘id’]更改为$ _GET [‘id’],这使我的回复 TestCont

  • 我正在尝试将对象从AJAX传递给Spring控制器。我基本上尝试了我在SO和大量其他在线资源上遇到的所有解决方案,但都无济于事。我不知道我做错了什么,所以我寻求您的帮助。我正在开发一个简单的网络商店,此时我想做的就是将登录值(用户名和密码)从html文件上的模态表单传递给控制器。这是我的代码:LoginCredentials.java 指数html(删除大部分引导的html部分) 我ndex.ht

  • 问题内容: 我试图通过ajax调用将模型传递给控制器​​。 我已经看过Laviak在以下问题中提供的答案,但无法使其正常工作。 运行ajax调用时,MODEL变量出现未定义的错误。我已经确认正在调用助手类,并且正在返回字符串。是否因为AJAX调用位于.js文件中?为什么未定义? 我的代码: Site.Master: 助手类: Javascript文件: 动作方法: 问题答案: 确保在主文件中定义变

  • 问题内容: 在MVC4中,如何将javascript对象传递给AJAX中的C#控制器?最后,我尝试了一下,但没有成功。 Javascript客户端: C#服务器端方法: 我的参数始终为null。我试图更改contentType,但仍然无法正常工作。我的错误在哪里?我找到了一些帖子,但没有发现我做错了什么。 非常感谢。 问题答案: 确保javascript和C#模型之间的属性名称匹配。在你的问题,你

  • 问题内容: 我正在尝试使用JQuery Ajax将表单的数据传递到我的控制器方法,但是由于在Controller Side上使用调试器时ViewModel为null,因此我不确定如何执行此操作。 我的ViewModel是: 前提是我数据库中的实体/表。 该表单包含“前提”表中的字段。 在我的javascript函数中,我这样做: 但是,当我在方法中检查viewModel参数时,它为null: 关于

  • 我在JavaScript中有以下包含过滤器选项的复杂对象 我想传递给 ASP.NET MVC4 WebApi 控制器 GET 使用jQuery ajax调用 ASP。NET控制器方法为“null”。如果我将其更改为POST,则过滤器对象将正确传递。有没有方法将复杂对象传递给GET? 我不想分离出URL的参数,因为会有很多参数,这会使它效率低下,很难有可选的参数,这样即使添加了新参数,方法签名也保持