gpt4 book ai didi

javascript - 将 Javascript 字符串数组传递给 Spring Controller

转载 作者:行者123 更新时间:2023-11-28 04:41:49 25 4
gpt4 key购买 nike

我在页面上创建了一个标签输入部分,并希望在用户输入标签时保存标签。

所以我试图将 Javascript 字符串数组传递给 spring Controller 。

这是填充 tagList 数组的 JavaScript。它基本上给了我一个数组,如下所示:

var taglist = [];
a[0] = hi;
a[1] = bye;
a[2] = shoe;

这就是我尝试做的方式。

  $(':submit').click(function() {
alert("array is "
+ JSON.stringify(tagList));
alert("enter ajax");
$.ajax({
type : "POST",
url : "/json/tags",
data : {
tagList : a

},
success : function(response) {
alert("good results")
},
error : function(e) {
alert('Error: ' + e);
}
});
})

列表填充得很好,就在我尝试将此列表传递给我的 Controller 时。

@RequestMapping(value = "/json/tags", method = RequestMethod.POST)
public String controllerMethod(@RequestParam(value="tagList[]") String[] myArray){
System.out.println(myArray);

if(myArray.length> 2){
return "good";
}else{
return "bad";
}
}

我正在关注这个tutorial它使用整数数组来完成此操作,但似乎无法使用字符串数组。

最佳答案

需要使用 GET 而不是 POST 以及其他一些小的更改

                  alert("array is " + JSON.stringify(tagList));

var methodPN = 'getTagName';
<c:url var="getTagUrl" value="/json/tags.json" />
var ajaxURL = '${getTagUrl}';
var photoid = '${photo.uploadedFile.id}';

var sendData = {
controllerMethod: methodPN,
tagList : tagList,
photoid : photoid
};
alert("enter ajax");

$.ajax({
url : ajaxURL,
data : sendData,
type : "GET",
beforeSend: function (xhr) {
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Content-Type", "application/json");
},
success : function(response) {
alert("good results")
},
error : function(e) {
alert('Error: ' + e);
}
});
})

还有我更新的 Controller

@RequestMapping(value = "/json/tags", method = RequestMethod.GET, params = "controllerMethod=getTagName",
produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
public @ResponseBody String controllerMethod(Model model,@RequestParam(value="tagList[]", required = true) String[] myArray, @RequestParam(value="photoid", required = true) long photoid){

关于javascript - 将 Javascript 字符串数组传递给 Spring Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43694176/

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