1

好的,所以.load()使用...

如果数据作为对象提供,则使用 POST 方法;否则,假定为 GET。

我有以下...

// an array of itemIds
var items = $selected.map(function() {
   return $(this).find('.item').text();
}).get();

// post the data
$container.load(
    _url,
    $.param(data, true),
    function(response, status, xhr) {
        //...
    }
);

我遇到的问题是,如果我$.param用来序列化数据,似乎使用了 GET。

如果我不使用$.param,则使用 POST,但我再次遇到问题,数组未正确序列化,并且我没有在控制器中接收数据。

有没有简单的方法解决这个问题?

4

1 回答 1

0

您可以使用jQuery.get()代替.load()

$.get(_url, $.param(data, true), function(data) {
  $container.html(data);
});

这将与使用参数调用load具有相同的效果,但使用的是 GET 请求而不是 POST 请求。

于 2011-03-09T12:07:55.987 回答