2016-06-03 4 views
1

У меня есть страница jsp. На странице jsp есть форма, и когда я нажимаю кнопку отправки, управление переходит к сервлету, и сервлет отправляет ответ в том же jsp. Я хочу вызвать javascript fuction после вызова ответа.Вызов функции Javascript в Servlet, после ответа сервлета

String operation = request.getParameter("operation"); 
     if (operation.equals("create")) { 
      String value = null; 
      Map<String, String> requestMap = new HashMap<>(); 
      String entity = request.getParameter("entity"); 
      Enumeration<String> parameterNames = request.getParameterNames(); 
      while (parameterNames.hasMoreElements()) { 
       String paramName = parameterNames.nextElement(); 
       if (paramName.equals("operation") || paramName.equals("entity")) { 
        value = request.getParameter(paramName); 
       } else { 
        value = Constraints.toTitleCase(request.getParameter(paramName)); 
       } 
       requestMap.forEach((k,v)->System.out.println("{KeY} :"+k+".....{VAlue} :"+v)); 
       requestMap.put(paramName, value); 
      } 
      masterHelper.processRequest(requestMap); 
      log.debug("js"); 
      response.getOutputStream().println("<script>sucess();('hello');</script>"); 
      response.sendRedirect("user/master/" + entity + ".jsp"); 
     } 

ответ

2

Похоже, вы перенаправляете страницу.

response.sendRedirect("user/master/" + entity + ".jsp"); 

попробуйте также отправить определение функции.

1

Все, что вы можете сделать, это просто установить для него дополнительную переменную, а затем на основе значения этой переменной вызвать функцию javascript. Вы можете следить за шагами ниже

  1. В сервлет установить логическую переменную

    булево isResponse = истина;

  2. Затем добавьте его в ответ

    request.setAttribute ("isResponse", isResponse);

  3. Добавить код ниже в jsp.

    $ {isResponse == "истина" 'windows.onLoad = имя_функции()': ''}

И вы сделали с ним.

Смежные вопросы