jQuery的Ajax请求数据时type无法使用GET

写一个ASP.NET MVC例子,它是使用jQuery的$.Ajax来呼叫控制器的数据。

 

 

创建一个视图:

 

运行结果:

 

一切正常,但是本例子我们只是获取数据,并没有做任何数据POST上传至控制器,我们尝试把jQuery代码的type改为GET试。

 

再次浏览,但结果没有达到我们预期的效果,没有数据显示。

 

奇怪,经查资料,原来JsonResult操作返回JSON时,JsonRequestBehavior默认是POST。因此我们需要为其指定参数选项JsonRequestBehavior.AllowGet:

 

添加此参数选项之后,显示结果跟POST是一样的。

当然,某些原因需要,你的JsonResult只能使用POST的话,可以使用另外一个参数JsonRequestBehavior.DenyGet:

 

这样显式指定DenyGet之后,jQuery的$.Ajax绝对不能用GET了。

posted @ 2015-06-29 16:13  Insus.NET  阅读(1203)  评论(0编辑  收藏  举报