如何使用jQuery"load"来执行带有额外参数的GET请求?

Thi*_*Lam 29 parameters jquery load http-get

我正在阅读jQuery加载文档,它提到我可以通过传入额外的参数作为字符串来使用load来执行GET请求.我的参数作为键/值对的当前代码是:

$("#output").load(
    "server_output.html",
    {
        year: 2009,
        country: "Canada"
    }
);
Run Code Online (Sandbox Code Playgroud)

以上工作正常,但这是一个帖子请求.如何在仍然使用时修改上述内容以执行GET请求load

Kan*_*ane 92

用途$.param(data):

$("#output").load(
    "server_output.html?" + $.param({
        year: 2009,
        country: "Canada"})
);
Run Code Online (Sandbox Code Playgroud)

  • 这应该是答案. (11认同)

tj1*_*111 16

根据您链接的文档:

默认情况下将执行GET请求 - 但如果以Object/Map(键/值对)的形式传入任何额外参数,则会发生POST.作为字符串传递的额外参数仍将使用GET请求.

所以简单的解决方案是在将对象传递给函数之前将其转换为字符串.不幸的是,文档没有指定字符串应该包含的格式,但我猜它会像手动生成GET请求一样.

$("#output").load(
    "/server_output.html?year=2009&country=Canada"
);
Run Code Online (Sandbox Code Playgroud)