1

基本上,我想加载页面的内容,同时还传递一些 POST 参数。

现在,您可能会说,我使用.post,然后只使用类似的东西$("#div").html(data),但问题是我想要.load. .post也许可以以某种方式使用它?

4

2 回答 2

4

您可以使用.load()这种方式传递POST数据:

var data = {
    a: '123'
}

$('#element').load(url, data);

如果只使用了两个参数,而第二个参数是一个对象,它将使用POST并将内容传递给要加载的页面。

另请参阅:.load()文档

于 2012-11-24T07:35:39.670 回答
1

不,没有使用 POST 请求加载内容的方法。

您可以发出 POST 请求并将结果放在页面中。例子:

$.post(
  'page.html',
  { post: 'data' },
  function(data){
    $('#someElement').html(data);
  },
  'html'
);

编辑:

要使用返回代码的部分结果,您可以像load方法一样解析结果:

  function(data){
    var c = $(data);
    $('#someElement').append(c.find('#somePart'));
  },

编辑2:

正如 Jack 所展示的,实际上有一种方法可以使该load方法发出 POST 请求。(由于误导性文档,我错过了它。)

部分使用结果的示例,将数据作为对象发送会触发 POST 请求方法:

$('"someElement #somePart').load('page.html', { post: 'data' });
于 2012-11-24T07:31:05.543 回答