Мой JQuery отображается частично не работает Javascript внутри - PullRequest
0 голосов
/ 03 октября 2011

Итак, я отправляю некоторые параметры моему контроллеру (через ajax), чтобы получить некоторые записи, а затем отображаю результаты с помощью javascript, загружая частичное.В частичном цикле Im просматривает массив извлеченных записей и отображает каждую, но я также пытаюсь вызвать функцию javascript в теге head моей страницы и передаю данные из моего массива.

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

В основном я пытаюсь обновить карту Google с полученной информацией.

Вот мой отрендеренный фрагмент:

  <ol class="shop_list">
    <% @shops.each do |s| %>
      <script type="text/javascript">
        shopMarker(<%= s.latLng %>); //This would be a comma separated string containing         latitude and longitude
      </script>
      <li><%= link_to s.shop_name ,"#" %></li>
    <% end %>
  </ol>

Вот jquery, вызывающий партиал, когда контроллер отвечает на JS:

$("#shop_results").html("<%= escape_javascript(render("shop_results")) %>");

, а вот функция Im, вызываемая в заголовке:

  function shopMarker(latLng){
      var marker = new google.maps.Marker({
        map: map,
        position:latLng
      });
      map.setCenter(latLng);

  }

Чего мне не хватает?

1 Ответ

0 голосов
/ 03 октября 2011

Не могли бы вы опубликовать свой ответ контроллера и ссылку / форму, которую вы используете для отображения результатов магазина в первую очередь?

Ваш контроллер должен выглядеть примерно так:

respond_to do |format| 
  format.js
end

Вашответ должен называться action_name_here.js.erb.

Наконец, по умолчанию при запросе XHR ваш первоначальный вызов к контроллеру должен использовать ответ JS, но вы можете подтвердить, посмотрев в свои журналы, что он говорит ... responding with JS"формат?

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