jQuery .load()函数正在点击我的<httppost()>操作而不是我的<httpget()> </httpget()> </httppost()>

时间:2011-07-27 21:31:04

标签: jquery ajax asp.net-mvc-3

我的方法中有一个重载动作,一个声明了,另一个声明了。

我使用Post metod来处理我的表单的提交按钮,这样可以正常工作。

我希望HttpGet方法处理jQuery .load()操作,但我的Post方法也会捕获它。

知道我错过了什么吗?我是否必须显式调用.get()或.ajax()来执行正确的操作?

谢谢!

-Ben

1 个答案:

答案 0 :(得分:9)

.load方法可以发送HTTP POST AJAX请求,如文档中所述:

  

如果数据作为对象提供,则使用POST方法;除此以外,   假设GET。

例如

$('#result').load("/foo", { id: 123 }, function(result) {

});

将发送POST请求。

如果您想确保使用$.get,或$.ajax使用type: 'GET'。另外请不要忘记,如果您对AJAX使用GET请求,某些浏览器可能会缓存结果并让您陷入麻烦或至少出现一些奇怪的行为,因此如果您希望服务器中的 fresh 内容使用{{ 1}} $.ajax参数。