Ajax сообщение должно вернуться на страницу html - PullRequest
0 голосов
/ 28 февраля 2020

Я вызываю метод POST из ajax и хочу, чтобы он возвратил страницу html со всеми атрибутами.

Мой код:

@RequestMapping(value = "/postMethod", method = {RequestMethod.POST, RequestMethod.GET})
public String getPage( @RequestBody(required=false) Object obj, HttpServletRequest request, Model model) throws Exception {

    request.getSession().setAttribute("sess", cmp);
    model.addAttribute("one", list);
    model.addAttribute("two", list2);
    model.addAttribute("object", new object());
    return "htmlpage";
}

Ajax вызов:

var dataTosend = prepareDataToSend(data);
    $.ajax({
        url : getContextPath()
        + "/app/postMethod",
        type : 'POST',
        data : JSON.stringify(dataTosend),
        contentType : 'application/json',
        success : function(data) {
            console.log(data);
            //return to htmlpage
        },
        error : function() {

        }
    });

Мой html образец: это не форма:

<div id="page">
  <!-- HEADER -->
  <div id="header" class="inside content-wrapper">
<!-- MAIN CONTENT -->
  <div id="main-content">
    <div class="content">
      <!-- accounts -->
      <table>
        <tr>
          <td>
            <label style="margin: 0 0 20px 0">Account</label>
          </td>
          <td> &nbsp; </td>
          <td>
            <select id="Dropdown" onchange="onDropdown()">
              <option th:each="type : ${list}" th:value="${type.Id}" th:text="${type.Name}"></option>
            </select> &nbsp; &nbsp;
          </td>
          </tr>
          </table>
          <!..............more div and other html data...........>
          </div>
</div>
</div>
</div>

Если я сделаю вызов метода, он вернется на страницу html, но во время публикации Страница вызова не перенаправлена, я хочу перенаправить на htmlpage. html со всем набором атрибутов в сообщении, любое решение приветствуется.

1 Ответ

0 голосов
/ 02 марта 2020

Спасибо всем за ваши комментарии. Поскольку я хочу перезагрузить всю страницу, я перенаправляю на одну и ту же страницу в случае успеха, так как она GET и POST:

var dataTosend = prepareDataToSend(data);
    $.ajax({
        url : getContextPath()
        + "/app/postMethod",
        type : 'POST',
        data : JSON.stringify(dataTosend),
        contentType : 'application/json',
        success : function(data) {
            console.log(data);
           window.location.replace(getContextPath()+"/app/postMethod");
        },
        error : function() {

        }
    });

В моем случае все работает нормально.

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