使用Jquery UI自动完成function将额外参数传递给源

我正在尝试使用jQuery UI自动完成function传递城市和州的额外参数。 我一直试图找到一个答案,但似乎找不到适合我的东西。

我目前的代码是:

$(document).ready(function () { $("#id_place").autocomplete({ source: function(request, response) { $.ajax({ url: "/autocomplete_place", dataType: "json", data: { term: request.term, city: $("id_city").val(), state: $("id_state").val(), test: 4 }, success: function(data) { response(data); } }); }, }); }); 

自动完成function正常,但它没有将我的城市和州参数传递给该function。 如果我输入v它请求URL: /autocomplete_place?term=v&test=4

我猜它评估城市和州的val() (document).ready()并获得这些表格字段的空白值? 我认为将源代码转换为ajax函数可以解决这个问题,但也许不会。

有任何想法吗?

你在选择器$("#id_city").val()?错过了# $("#id_city").val()?