gpt4 book ai didi

ajax - 使用附加参数对 Spring Controller 进行 jQuery 调用

转载 作者:行者123 更新时间:2023-12-01 06:27:41 25 4
gpt4 key购买 nike

在文本字段发生更改时,jQuery 会调用 Spring Controller 。我的问题是这个查询如何将 @RequestParam 发送到 Controller 方法 controller/find

我如何能够在此通话中发送额外的Param

    $(document).ready(function() {
$( "#id" ).autocomplete({
source: "${pageContext. request. contextPath}/controller/find.htm"
});

});

这有效

    @RequestMapping(value = "/find", method = RequestMethod.GET)
public @ResponseBody
List<String> findItem(@RequestParam("term") String id)

但需要类似的东西

    @RequestMapping(value = "/find", method = RequestMethod.GET)
public @ResponseBody
List<String> findItem(@RequestParam("term") String id, Additional param here ??)

最佳答案

如果您将函数传递给自动完成的 source 选项(而不仅仅是指定 URL 的字符串),您可以定义自己的要发送到服务器的数据结构:

$('#id').autocomplete({
source: function (request, response) {
$.ajax({
url: './controller/find.htm',
data: {
term: request.term,
extraParam: 'foo'
},
success: function (data) {
console.log('response=', data);
}
});
}
});

现在,自动完成请求将包含两个参数:termextraParam(jsFiddle:http://jsfiddle.net/gtBUt/,打开浏览器的“网络流量”选项卡以查看发送的内容)。

Controller 可以像这样处理这个输入:

@RequestMapping(value = "/find", method = RequestMethod.GET)
@ResponseBody
public List<String> findItem(@RequestParam("term") String term,
@RequestParam("extraParam") String extraParam) {
...
}

关于ajax - 使用附加参数对 Spring Controller 进行 jQuery 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16136162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com