Селектор jQuery загружает изображения с сервера - PullRequest
0 голосов
/ 28 апреля 2010

вот код:

<script type="text/javascript">
    var ajax_data = 
        '<ul id="b-cmu-rgt-list-videos"><li><a href="{video.url}" '+
        'title="{video.title.strip}"><img src="{video.image}" '+
        'alt="{video.title.strip}" /><span>{video.title}</span></a></li></ul>';

    var my_img = $(ajax_data).find('img');
</script>`

ajax_data - это данные из шаблонизатора JS, где мне нужно получить некоторую их часть Проблема в том, что jQuery делает GET на

img src={video.image}: GET /test/%7Bvideo.image%7D HTTP/1.1 (в заголовках Firefox Live HTTP).
Этот GET генерирует 404 с сервера.

Есть какие-нибудь подсказки, как решить эту проблему?
Большое спасибо:)

1 Ответ

1 голос
/ 29 апреля 2010

Когда вы создаете jquery-объект из html, он сразу оценивается (потому что фрагмент документа создан), так что это:

$("<img src='bob.jpg' />")

Немедленно вызывает выборку изображения. На мой взгляд, у вас было 3 быстрых варианта (и, возможно, других, но трудно сказать, не имея контекста к вашему вопросу):

  1. Замените {video.image} перед созданием объекта jQuery.
  2. Удалите src="{video.image}", просто найдите <img> через селектор, который у вас уже есть, и установите атрибут src позже, например: $(ajax_data).find('img').attr('src','myImage.jpg');
  3. Делайте все, что вы хотите с помощью регулярных выражений, прежде чем вставлять что-либо в DOM.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...