Проблема с запуском View’s $ (document).готовый обработчик ответа контроллера в Spring MVC

#javascript #spring #jsp #servlets #spring-mvc

#javascript #spring #jsp #сервлеты #spring-mvc

Вопрос:

Мы пытаемся изменить наш HttpServlet на Spring DispatcherServlet. Мы используем jQuery и JSP на стороне клиента. И на наших страницах есть некоторые динамические элементы.

Например, есть

 $(document).ready(function(){
        window.alert("alerted!");
});
  

в blah.jsp . И мы запускаем его, вызывая

 $("#myDiv").load("blah.jsp");
  

из другого .jsp

Затем я создал конфигурации для Spring MVC. И обратите внимание, что новые контроллеры полностью работают.

Вот в чем проблема. Контроллер возвращает «бла» представление из сервлета, это строка html. И я не могу заставить этот $(document).ready обработчик сработать, когда я добавляю его к $("#myDiv") .

Как я могу это выяснить?

C.O.

Комментарии:

1. … не могли бы вы опубликовать немного больше js-кода?

Ответ №1:

я предполагаю, что проблема заключается в том, что скрипт не запускается после того, как вы вставляете полезную нагрузку ответа на страницу.

итак, я думаю, что если вы укажете атрибут DataType в вызове ajax, скрипты должны запускаться после вставки в документ

     $.ajax({
      url: "blah.jsp",
      success: function(data) {
        $('#myDiv').html(data);  
      },
      dataType: "html"
    });
  

или

     $.get("blah.jsp", null, function(data) {
        $('#myDiv').html(data);  
      }, "html");