在Ajax actionlink中传递一个长字符串

时间:2016-02-03 15:23:48

标签: jquery ajax asp.net-mvc razor razor-2

我需要使用ajax动作链接将一个长字符串传递给我的动作方法,但我收到一个错误说"查询字符串非常长" 如果我使用正常的操作链接,则此问题不存在。

 @Ajax.ActionLink("Back", "Navigate", "mycontroller",new {value=mystring}, new AjaxOptions() { HttpMethod = "POST", UpdateTargetId = "resultView", InsertionMode = InsertionMode.Replace, LoadingElementId = "pageloaddiv" }, new {  type = "submit"})

有什么办法,我可以使用ajax.Actionlink实现这个目标吗?

1 个答案:

答案 0 :(得分:1)

GET方法有数据限制

  

虽然HTTP协议的规范没有指定任何规范   最大长度,实际限制由Web浏览器和服务器强加   软件。 http://www.boutell.com/newfaq/misc/urllength.html

在jquery中使用POST方法,使用$ .post(para)代替$ .get(paras)。