首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

对MVC ActionResult的JQuery $post调用似乎递归地调用自身-空参数错误

对于MVC ActionResult的JQuery $post调用似乎递归地调用自身-空参数错误,这是一个常见的错误,通常是由于代码逻辑问题引起的。下面是一个完善且全面的答案:

MVC(Model-View-Controller)是一种软件设计模式,用于将应用程序的逻辑分离为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。ActionResult是MVC框架中的一个类,用于表示控制器方法的返回结果。

在JQuery中,可以使用$post方法来向服务器发送异步HTTP POST请求。当在MVC中使用JQuery $post调用时,如果出现递归地调用自身的错误,通常是因为代码中存在逻辑问题,导致请求被无限循环地发送。

可能的原因和解决方法如下:

  1. 错误的逻辑设计:检查代码中是否存在逻辑错误,例如在控制器方法中调用了自身,或者在返回结果中包含了导致循环调用的代码。确保控制器方法的逻辑正确,并且没有无限循环的调用。
  2. 参数错误:检查$post方法的参数是否正确。确保传递给$post方法的URL、数据和回调函数等参数都正确设置。
  3. 异步请求问题:确保$post方法是以异步方式发送请求。如果请求是同步的,可能会导致页面被阻塞或出现其他错误。
  4. 调试和日志记录:使用浏览器的开发者工具或其他调试工具来跟踪代码执行过程,并查看是否有其他错误或异常。在代码中添加适当的日志记录,以便更好地理解代码的执行流程。

对于这个特定的错误,由于没有提供具体的代码示例,无法给出更具体的解决方法。但是,通过检查代码逻辑、参数设置和请求方式,可以解决大多数类似的问题。

腾讯云提供了丰富的云计算产品和服务,包括云服务器、云数据库、云存储等。您可以根据具体需求选择适合的产品。更多关于腾讯云产品的信息和介绍,请访问腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

七天学会ASP.NET MVC (四)——用户授权认证问题

小编应各位要求,快马加鞭,马不停蹄终于:七天学会 Asp.Net MVC 第四篇出炉,在第四天学习中,我们主要了学习如何在MVC中如何实现认证授权等问题,本节主要讲了验证错误错误值,客户端验证...如之前实验9讨论,当点击提交按钮时,是给服务器发送请求,验证失败时服务器请求没有意义。通过添加”return false“代码,可以取消默认服务器请求。...当点击登录时,Dologin action 方法会被调用。 Dologin 方法功能: 通过调用业务层功能检测用户是否合法。 如果是合法用户,创建认证Cookie。可用于以后认证请求过程中。...FormsAuthentication.SetAuthCookie中第二个参数”false“表示什么? false决定了是否创建永久有用Cookie。...当凭证错误时,UserName 文本框值是如何被重置? HTML 帮助类会从Post 数据中获取相关值并重置文本框值。这是使用HTML 帮助类一大优势。 Authorize属性有什么用?

8.7K50

ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)

ActionLink方法第一个参数是想要呈现链接文本 (例如,Edit Me)。第二个参数是要调用操作方法名称(在本例中, Edit方法)。...此属性指定了Edit方法重载,此方法仅被POST 请求所调用。您可以将HttpGet属性应用于第一个编辑方法,但这是不必要,因为它是默认属性。...下面的代码演示如何检查movieGenre参数。如果它不是,代码进一步指定了所查询电影流派。 if (!...因为我们没有一个电影流派“All”,也没有“All”SelectList,所以当我们post back后不做任何选择,movieGenre查询字符串值是。...ASP.NET MVC 5 - 使用Wijmo MVC 5模板1分钟创建应用 希望这些文章感兴趣朋友有所帮助,另附上PDF版汇总文档: 《ASP.NET MVC 5 入门指南》PDF版

6.7K110
  • Model验证系统运行机制是如何实现

    MVC项目模板创建Web应用中,我们定义了如下一个默认HomeController。...(《ASP.NET MVC以ModelValidator为核心Model验证体系: ModelValidatorProviders》),也就是针对Contact对象验证并不会递归Address对象属性实施验证...MVC项目模板创建Web应用中,我们定义了如下一个默认HomeController。...,所以Model绑定和Model验证绝对不可能是先后过程,唯一可能是DefaultModelBinder在递归进行Model绑定过程中去调用ModelValidator提供数据实施验证。...由于ContactAddress属性是一个复杂类型,所以在针对Contact类型Model绑定过程中会递归绑定一个Address对象并Contact对象Address属性进行初始化。

    1.8K110

    ASP.NET MVC 异步实现

    MVC 中实现异步操作有两种方法,一种是使用jQuery异步函数,另一种就是使用MVC AjaxHelper 注意:在行为详解中提到过,如果行为返回对象为JsonResult 时,要使用get...获取必须添加第二个参数-JsonRequestBehavior.AllowGet. jQuery方法实现 注意:jQuery实现需要调用jquery文件 先编写控制器方法: public ActionResult...发送post请求给AjaxTest/ CalcAdd这个action,自动识别传送name:a,b,并通过路由实现自动接收装配,经由控制器中action操作后,将结果异步返回给网页。...AjaxHelper 注意:AjaxHelper实现需要调用jquery.unobtrusive-ajax 文件,可以使用 NuGet 添加。...同样,先写控制器: public ActionResult CalcAdd1(int a, int b) { int sum = a + b; var temp = new

    1.2K30

    MVC项目开发中那些用到知识点(Jquery ajax提交Json后台处理)

    前言   jQuery提供ajax方法能很方便实现客户端与服务器异步交互,在asp.net mvc 框架使用jQuery能很方便异步获取提交数据,给用户提供更好体验!   ...调用jQueryajax方法时,jQuery会根据post或者get协议参数data进行序列化;   如果提交数据使用复杂json数据,例如:     {userId:32323,userName...:{firstName:"李",lastName:"李大嘴"}}   那么服务器是无法正常接收到完整参数,因为jQuerydata序列化,是使用了键值对拼装方式; 参数拼装成 userId=32323&...正文五步曲   首先,第一步解决jQuery对于参数序列化问题: 引用前台处理Js文件,主要是将Json字符串进行处理将其封装到JsonNet.js文件中 String.format = function...主要是通过实现了IModelBinder进行参数化绑定即可。 最后一步进行F5运行测试。 ? 通过代码可以看出我是将Json字符串传递到服务端,服务端其进行解析然后又转换为Json返回到客户端

    1.7K31

    MVC项目开发中那些用到知识点(Jquery ajax提交Json后台处理)

    前言   jQuery提供ajax方法能很方便实现客户端与服务器异步交互,在asp.net mvc 框架使用jQuery能很方便异步获取提交数据,给用户提供更好体验!   ...调用jQueryajax方法时,jQuery会根据post或者get协议参数data进行序列化;   如果提交数据使用复杂json数据,例如:     {userId:32323,userName...:{firstName:"李",lastName:"李大嘴"}}   那么服务器是无法正常接收到完整参数,因为jQuerydata序列化,是使用了键值对拼装方式; 参数拼装成 userId=32323&...正文五步曲   首先,第一步解决jQuery对于参数序列化问题: 引用前台处理Js文件,主要是将Json字符串进行处理将其封装到JsonNet.js文件中 String.format = function...主要是通过实现了IModelBinder进行参数化绑定即可。 最后一步进行F5运行测试。 ? 通过代码可以看出我是将Json字符串传递到服务端,服务端其进行解析然后又转换为Json返回到客户端

    1.9K20

    Asp.Net MVC4入门指南(6):验证编辑方法和编辑视图

    ActionLink方法第一个参数是想要呈现链接文本 (例如,Edit Me)。第二个参数是要调用操作方法名称。...此属性指定了Edit方法重载,此方法仅被POST 请求所调用。您可以将HttpGet属性应用于第一个编辑方法,但这是不必要,因为它是默认属性。...如果不带参数调用Edit 方法,ID 参数被指定为默认值 零。如果找不到一部电影,则返回HttpNotFound 。...如果您更改了SearchIndex方法来测试如何传递路由绑定 ID 参数,更改它,以便您SearchIndex方法采用字符串searchString参数: public ActionResult...如果它不是,代码进一步指定了所查询电影流派。

    4.3K100

    ASP.NET MVC 5 - 给数据模型添加校验器

    如同jQuery客户端验证来检测到错误时,它会显示一个错误消息。 ?...在我们电影示例中,我们使用了验证,当客户端检测到错误时,form不会被post到服务器;所以第二个Create方法永远不会被调用。...如果您在浏览器中禁用了 JavaScript,客户端验证也会被禁用,HTTP POST Create方法会调用 ModelState.IsValid来检查影片是否含有任何验证错误。...您可以在HttpPost Create方法中设置一个断点,当客户端验证检测到错误时,不会post form数据,所以永远不会调用该方法。...此Helper旁边是Html.ValidationMessageFor方法调用。这两个Helper方法将处理由控制器传递到视图模型对象(在这里是,Movie对象)。

    9K70

    ASP.NET MVC 5 - 查询Details和Delete方法

    )从而使得链接URL 出现错误。...但是,在这里您需要两种删除方法 — — 一个 GET方法和一个POST方法它们都具有相同签名。(他们都需要接受一个整数作为参数)。 要解决这一点,可以有几种办法。一是使用不同方法名称。...另一个常见方法,来避免具有相同名称和签名方法,是人为改变POST 方法,包括未使用参数签名。...例如,有些开发人员添加参数类型 FormCollection,FormCollection是会传递给 POST 方法,然后根本不使用此参数: public ActionResult Delete(FormCollection...ASP.NET MVC 5 - 使用Wijmo MVC 5模板1分钟创建应用 希望这些文章感兴趣朋友有所帮助,另附上PDF版汇总文档: 《ASP.NET MVC 5 入门指南》PDF版

    3.1K60

    Asp.Net MVC4入门指南(8):给数据模型添加校验器

    调用此方法将验证对象上所有应用了验证约束属性。如果对象含有验证错误,则Create方法会重新显示初始form。如果没有任何错误,方法将保存信息到数据库。...在我们电影示例中,我们使用了验证,当客户端检测到错误时,form不会被post到服务器;所以第二个Create方法永远不会被调用。...如果您在浏览器中禁用了 JavaScript,客户端验证也会被禁用,HTTP POST Create方法会调用 ModelState.IsValid来检查影片是否含有任何验证错误。...您可以在HttpPost Create方法中设置一个断点,当客户端验证检测到错误时,不会post form数据,所以永远不会调用该方法。...请注意,代码如何使用Html.EditorFor helper 输出为Movie中每个属性元素。此Helper旁边是Html.ValidationMessageFor方法调用

    4.6K100

    ASP.Net MVC开发基础学习笔记:四、校验、AJAX与过滤器

    二、ASP.Net MVC两种AJAX方式 2.1 使用JQuery AJAX方式   首先,在ASP.Net MVC中使用此种方式跟普通WebForm开发方式是一致,需要注意是:Url地址不同...需要注意是:   (1)如果你在JQuery AJAX中使用是get方式提交,那么在在使用Json返回JsonResult时注意要将第二个参数设置允许Get提交方式:return Json("",...:   ①Ajax.BeginForm没有提供闭合方法,需要使用Using配合关闭;   ②AjaxOptions参数设置:   HttpMethod代表此次AJAX请求到底是POST方式还是GET...   为了显示加载提示效果,我们人为修改一下Action方法,使用Thread.Sleep(3000)来延迟一下请求返回时间 public ActionResult GetServerDate...方法,这里仅仅为了演示效果,没有异常进行处理。

    2.1K20

    七天学会ASP.NET MVC (三)——ASP.Net MVC 数据处理

    名称和 Id作用是否相同? 不相同,名称属性是HTML内部使用,当请求被发送时,然而 ID属性是在JavaScript中开发人员为了实现一些动态功能而调用。...保存接收值(Post 数据或查询字符串值)              在Asp.net MVC,将使用 DataAnnotations来执行服务器端验证。...当匹配成功时: 如果接收值是,则会将值分配给属性,如果无法执行值分配,会设置缺省值,ModelState.IsValid将设置为fasle。...ValidationMessage根据关键字显示ModelState表示错误信息。 如果我们需要可整数域,该怎么做? 1: public int?...MVC学习中比较重要部分,在完成本节学习同时,你是否MVC理解又进了一步?

    5.3K100

    ASP.NET MVC5中View-Controller间数据传递

    获取路由参数另外一种方式是给Action设置一个和路由模板中指定参数名一致(不区分大小写)参数即可,代码如下: public void GetValue(int id) { } 注意,这里不仅获取了路由数据...url传递参数属于Http协议中Get请求,若要发送大量数据可以使用Post请求。 ModelBinding 1....对于这样一个Action,如果是Post请求,MVC会尝试将Form(注意,这里Form不是指html中表单,而是Post方法发送数据方式,若我们使用开发者工具查看Post方式发送请求信息...,会看到Form Data一栏)中值赋值到Action参数中,如果是get请求,MVC会尝试将QueryString值赋值到Action参数中。...所以,直接使用匿名类型向View中传递数据,在前台页面是无法访问到匿名类型中属性。执行上面代码程序会出现错误: ?

    2.7K10

    ASP.NET MVCActionFilter是如何执行

    在ASP.NET MVC四大筛选器(Filter),ActionFilter直接应用在某个Action方法上,它在目标Action方法执行前后对调用进行拦截以执行一些额外操作。...三、ActionFilterActionResult设置 上面我们已经提到过,在ActionFilter链进行OnActionExecuting方法调用过程中,一旦某个ActionFilter为ActionExecutingContext...在通过Visual StudioASP.NET MVC项目模板创建Web应用中我们定义了如下三个ActionFilter(FooAttribute、BarAttribute和BazAttribute...我们三个ActionFilter特性Order属性作了相应设置使它们可以按照我们希望顺序(FooAttribute =>BarAttribute =>BazAttribute)执行。...对象并调用自身OnActionExecuted方法。

    1.6K70

    七天学会ASP.NET MVC(七)——创建单页应用

    :在Business Layer中引用EF 是非常必要,因为Business Layer与DataAccessLayer 直接关联,而完善体系架构它自身业务层是不应该与DataAccessLayer...修改错误 报错是由于在项目中既没有引用 SalesERPDAL,也没有引用EF,在项目中直接引用也并不是优质解决方案。 1....2.保存功能 我们会创建新MVC action 方法实现保存Employee,并使用jQuery Ajax调用 3....运行 关于实验35 JSON 方法作用是什么? 返回JSONResult,JSONResult 是ActionResult 子类。在第六篇博客中讲过MVC请求周期。...运行 总结 以上本系列七篇文章就是介绍MVC知识全部内容了,看到这里你是否已经MVC知识有了较为全面的掌握?

    4.3K60
    领券