我还应该在1.4.2中使用jquery .getJson吗?

时间:2010-05-18 20:25:45

标签: jquery asp.net-mvc

我正在看14天的jquery

http://jquery14.com/day-01/jquery-14

我看到了这一点,让我想知道是否有一点使用getJson了?

  

自动检测到的JSON和脚本类型   content-type(jQuery.ajax   文档,提交1,提交2)

     

如果对Ajax请求的响应是   以JSON mime类型返回   (application / json),dataType   默认为“json”(如果没有dataType   指定)。另外,如果   对Ajax请求的响应是   使用JavaScript mime类型返回   (text / javascript或   application / x-javascript),.   dataType默认为“script”(如果没有   指定了dataType,导致   脚本自动执行。

首先,我可以看到这样的巨大好处。在jquery 1.3中我遇到了一种情况,在某些情况下我会返回一个局部视图,有些情况下我会返回一个json结果(asp.net mvc)。

它在firefox中工作但是没有其他浏览器,其中一个问题是我基本上不得不告诉jquery做json或text / html。

随着它自动检测我可以逃脱这个。无论如何,我当时找到了一个解决方案。

所以现在它让我想知道使用GetJson是否有任何意义。

我也不确定如何设置这些JavaScript mime类型?我假设如果你从asp.net mvc返回一个JsonResult,它将设置它。但我不确定我是否只是发送文本结果如果它被设置(我不确定ContentResult是否会设置它)。

1 个答案:

答案 0 :(得分:2)

如果只需要.getJson()提供的功能,它仍然可以作为速记方法使用。就个人而言,我通常最终会在大多数时间使用.ajax()来进行自定义。

编辑: JP在评论中提出了一个很好的观点,作为一种速记方法,自动检测MIME类型,.getJson基本上被渲染为.get,因为$ .getJson(a,b) )会做与$ .get(a,b)完全相同的事情。