Создать один и тот же тип двух тегов внутри div

0

Я столкнулся с небольшой проблемой, но не могу ее решить. Я стараюсь, но не могу решить какое-либо решение. Я хочу создать два тега в div, используя JQuery, но не могу. Я даю свой код ниже, а также его вывод и то, что я хочу получить. Спасибо.

HTML:

    <ul id="tagCloud">
        <li id="tagcloud_li1">Item1</li>
        <li id="tagcloud_li">Item2</li>
    </ul>
    <div id="vis">
    </div>

CSS:

    #tagCloud li{
           display:none;
        }

JavaScript:

        $(function() {
                var liArray = document.getElementsByTagName('li');
                var list_item = [];
                for(var i=0; i < liArray.length ;i++){
                    list_item.push($(liArray[i]).text());
                    var get_item_value = ($(liArray[i]).text());
                        $('#vis').find('.set_texts').wrapInner('<text>');

                }

              });

Этот код показывает результат:

     <div id="vis">
          <text>
               <text></text>      //text within text
          </text>
     </div

Но я хочу получить этот результат:

     <div id="vis">
          <text></text>
          <text></text>      //text after text
     </div>

Как я могу это сделать?

  • 0
    попробуйте добавить что-то вроде этого $('#vis').find('.set_texts').append($('<text>'))
  • 0
    Спасибо, братан, его работает :)

4 ответа

0

Вы можете использовать .each() для прокрутки элементов списка вместе с .append():

$('#tagCloud li').each(function() {
    $('#vis').append('<text></text>');
});

Демо-версия скрипта

0
$(function() {
                var liArray = document.getElementsByTagName('li');
                var list_item = [];
                for(var i=0; i < liArray.length ;i++){
                  $text = $("<text>");
                  $text.text($(liArray[i]).text());
                  list_item.push($text);  
                  list_item.forEach(function(ele) {
                    $("#vis").append(ele);
                  })
                }
              });

Рабочая демонстрация

0
for(var i = 0 ; i< count; ++i)
  $("#vis").append("<text></text>");
  • 0
    может быть, не для тебя, приятель, но это решит его проблему.
0

можете попробовать .html(), .append()

используйте html(), когда вы хотите полностью заменить html #vis

используйте .append(), когда вы хотите добавить новый раздел с предыдущим

для более подробной ссылки

$('#vis').html('<text></text><text></text>');

$('#vis').append('<text></text><text></text>');
  • 0
    В этом коде есть цикл. Этот цикл зависит от числа «li». Я хочу создать более одного <text> в зависимости от количества 'li'.
  • 0
    . $ ( '# Визави') добавить ( '<текст> </ текст>'); затем используйте этот

Ещё вопросы

Сообщество Overcoder
Наверх
Меню