jQuery append () и data () - PullRequest
       12

jQuery append () и data ()

2 голосов
/ 16 апреля 2011

У меня есть неизвестное количество делений с увеличением идентификаторов:

<div id="source-1" data-grab="someURL"/>Content</div>
<div id="source-2" data-grab="anotherURL"/>Content</div>
<div id="source-3" data-grab="anddifferentURL"/>Content</div>
<div id="source-4" data-grab="andthelastoneURL"/>Content</div>

И у меня есть еще один список:

<ul>
   <li id="target-1" class="target"><a href="#"> </a></li>
   <li id="target-2" class="target"><a href="#"> </a></li>
   <li id="target-3" class="target"><a href="#"> </a></li>
   <li id="target-4" class="target"><a href="#"> </a></li>
</ul>

Теперь я хочу получить URL-адрес для захвата данныхиз источника-1 и добавьте его к цели-1 в качестве изображения и так далее.Итак, список вывода будет выглядеть примерно так:

<ul>
       <li id="target-1"><a href="#"><img src="someURL" /> </a></li>
       <li id="target-2"><a href="#"><img src="anotherURL" /> </a></li>
       <li id="target-3"><a href="#"><img src="anddifferentURL" /> </a></li>
       <li id="target-4"><a href="#"><img src="andthelastoneURL" /> </a></li>
</ul>

Я собираю все данные из первого списка, но я не уверен, как добавить правый исходный элемент к правому целевому элементу?

 $(document).ready(function(){
                $('.target').each(function(){
                var URL = jQuery(this).data('grab');
                });
            });

Ответы [ 2 ]

4 голосов
/ 16 апреля 2011
$(document).ready(function(){
  $('.target').each(function(){
     var $this = $(this);
     var divID = "source-" + ($this.id()).split("-")[1];
     $("a", $this).append('<img src="' + $(divID).data("grab") + '" />');
  });
});
2 голосов
/ 16 апреля 2011

Вы можете использовать индексы для выбора правильных элементов, если вы добавляете класс к вашим исходным элементам (например, .source):

 $(document).ready(function(){
                var targets = $( '.target' );
                $('.source').each(function(index, value){
                    $(target[index]).children("a").first().append($("<img src=" + value.data('grab') + " />"));
                });
            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...