如何将JQuery自动完成设置为POST而不是GET?

18 asp.net-mvc jquery

有没有办法将Jquery的自动完成HTTP提交方法设置为POST而不是GET?

小智 51

可能更好的传递它与源参数,而不是像这样全局设置:

$("#input").autocomplete({
    source: function (request, response) {
        $.post("/AjaxPostURL", request, response);
    }
});
Run Code Online (Sandbox Code Playgroud)


Sch*_*ime 13

你可以使用

$.ajaxSetup( { type: "post" } );
Run Code Online (Sandbox Code Playgroud)

在调用自动​​完成之前,它将覆盖页面上的ajax调用.


kar*_*m79 6

不幸的是,自动完成器没有选项可以让你设置它.但是,插件代码中有一个地方$.ajax可以调用该函数.没有type指定选项,这意味着它将默认为GET请求.您可以修改$.ajax调用(从最新版本的第361行开始)以包含type选项并将其值设置为"post":

$.ajax({ //line 361
    type: "post",
    ...
Run Code Online (Sandbox Code Playgroud)