JQuery / Spring: как разместить JSON, но вернуть HTML - PullRequest
0 голосов
/ 22 октября 2010

Когда я отправляю JSON на сервер и возвращаю обычную строку просмотра из контроллера Spring, мой jQuery не выполняет функцию «success».

Мой контроллер:

@RequestMapping(value = MappingConstants.RULE_ASSIGNMENT, method = RequestMethod.POST)
public String saveRuleAssignment(@RequestBody RuleAssignmentCO ruleAssignment) {
 // Some controller logic ...

 return "redirect:/some/view";
}

Как вы видите, мой контроллер просто принимает объект JSON и возвращает представление String, которое, как предполагается, анализируется Spring.В моих журналах я вижу, что представление действительно выполняется, но мой метод публикации jQuery не затрагивает функцию «success» (или «error»).

My jQuery:

jQuery.ajax({
 url: 'ruleAssignment',
 type: 'POST',
 cache: false,
 dataType: 'html',
 data: test,
 contentType: 'application/json',
 error: function() {
  console.log('error');
 },
 success: function() {
  console.log('success');
 }
});

1 Ответ

0 голосов
/ 25 октября 2010

Если я выполняю перенаправление с помощью Spring (перед моим представлением перед словом «redirect:»), метод успеха в вызове ajax javascript никогда не попадет.не нужно беспокоиться о том, что пользователь нажимает кнопку «Обновить», но поскольку это Ajax-вызов, он не нужен.

Спасибо Греггу за ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...