Передать результат из подтверждающего сообщения в контроллер Spring MVC - PullRequest
0 голосов
/ 26 декабря 2018

У меня есть проектное задание весной mvc, и у меня есть функция для удаления элемента из таблицы, и я хочу реализовать подтверждение для действия.

У меня нет опыта в js, явидел этот код в w3schools, но не смог реализовать его, чтобы он мог работать для меня.

JSP:
<td><a href="${deleteUrl}" onclick="deleteConfirm()">Delete</a></td>
<script>
    function deleteConfirm(){
        var confirmation = confirm("Do you really want to delete this item 
    from the list?");
        if(confirmation===false){
            var message = "false";
            return message;
        }
    }
 </script>


Controller : 
@GetMapping(Mappings.ITEMS)
public String booksList(Model model,HttpServletRequest request){
 String message = request.getAttribute("message").toString();
    if(message.equals("false")){
        return "redirect:/home";
    } else {
        delete elemtn ..
        ...
    }
  }

Какие источники я могу проверить по этому вопросу?

1 Ответ

0 голосов
/ 26 декабря 2018

Если вы вызываете URL-адрес ${deleteUrl}, обработанный с помощью контроллера, удаление происходит независимо от всплывающего окна подтверждения.

В JavaScript необходимо связать текст / ссылку / кнопку в таблице с помощьюфункция, которая выполняет следующие действия:

  1. Откройте всплывающее окно и затем ...
  2. Вызовите URL с AJAX после подтверждения.

Давайте для краткости воспользуемся jQuery , который я считаю очень мощной библиотекой.Самый простой фрагмент кода, который я могу построить, будет выглядеть так:

function confirmDelete(url) {
    var result = confirm("Do you want to delete an entry?");      
    if (result) {
        $.ajax({
            type : "DELETE",
            contentType : "application/json",
            url : url,
            timeout : 10000,
            success : function(data) {
                // update the table
            },
            error : function(e) {
                // handle the error
            }
        });
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...