1

SpringMVCとAjaxに問題があります。Spring ControllerにJavaScriptリストを送信しようとしていますが、送信できません。検索を行う必要があり、いくつかのパラメーターを含むリストを送信する必要があります。

4

3 に答える 3

0

AJAX パラメータとして使用する前に、リストを JSON String に変換する必要があります。

于 2012-07-19T08:35:56.473 に答える
0

SOのこの回答は役立つかもしれません

クライアント側のjquery ajax

$.ajax({
        type: "POST",
        url: "submit",
        data:JSON.stringify(detailsArr),
        success: function(html){
          alert( "Submitted");
            }
      });

そしてサーバー側で

@RequestMapping(value = "/search", method=RequestMethod.POST)
public String yourMethod(@RequestBody String body){
//convert body to array using JSONLib, FlexJSON or Gson
}
于 2012-07-19T08:38:03.677 に答える
0

ajax経由で送信する場合は、リストをjsonに変換する必要があります。これは春のブログ自体から:

$("#account").submit(function() {
    var account = $(this).serializeObject();
    $.postJSON("account", account, function(data) {
        $("#assignedId").val(data.id);
        showPopup();
    });
    return false;
});


@RequestMapping(method=RequestMethod.POST)
public @ResponseBody Map<String, ? extends Object> create(@RequestBody Account account, HttpServletResponse response) {
    Set<ConstraintViolation<Account>> failures = validator.validate(account);
    if (!failures.isEmpty()) {
        response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
        return validationMessages(failures);
    } else {
        accounts.put(account.assignId(), account);
        return Collections.singletonMap("id", account.getId());
    }
}
于 2012-07-19T08:28:00.317 に答える