Как добавить div с JavaScript внутри

0

у меня есть это

<div id="inprog_table">
</div>

Я попробовал это вставить

  var div = document.getElementById('inprog_table');
  div.innerHTML = div.innerHTML+
      "<div class='row'>
              <div class='col-xs-7'>
                 "+ $(".row.active .col-xs-7 p:first-child").text()+"  
              </div>
              <div class='col-xs-2'>
                  "+ $(".row.active .col-xs-7 p:last-child").text()+"
              </div>

              <div class='col-xs-2'>
                1
              </div>"

внутри inprog_table div. Я знаю, что это действительно неправильно, но я не знаю, как добавить все это.

  • 0
    Я полагаю, вы можете попробовать шаблоны JS
Теги:
innerhtml
append

4 ответа

1
Лучший ответ

Строковые литералы в JavaScript не могут распространяться на несколько строк, вам нужно будет сделать каждый конец строки на том же начальном этапе, который он запускал, или выйти из новой строки с помощью \

var div = $('#inprog_table');
div.append( "<div class='row'>"+
              "<div class='col-xs-7'>"+
                $(".row.active .col-xs-7 p:first-child").text() + 
              "</div>" +
              "<div class='col-xs-2'>" +
                $(".row.active .col-xs-7 p:last-child").text()+
              "</div>"+
              "<div class='col-xs-2'>1</div>"+
            "</div>");
0

Вы можете использовать:

.append() -

Пример: $ ("# div1"). Append (Элемент для добавления)

Или

.после()-

Пример: $ ("# div1") после (элемент для добавления)

0

Используйте jQuery для этого. Чистый Javascript - это слишком много хлопот.

Здесь код в jQuery:

$('#inprog_table').html(
    '<div class="row">' +
        '<div class="col-xs-7">' +
            $(".row.active .col-xs-7 p:first-child").text() +  
        '</div>' +
        '<div class="col-xs-2">' +
            $(".row.active .col-xs-7 p:last-child").text() +
        '</div>' +
        '<div class="col-xs-2">1</div>' +
    '</div>'
);
  • 0
    Спасибо за ответ, но это меняет содержимое div, а не добавляет.
  • 0
    Затем вы используете append (), а не html ();)
0

Использовать .append()

$('#inprog_table').append("<div class='row'><div class='col-xs-7'>" + $(".row.active .col-xs-7 p:first-child").text() + "</div><div class='col-xs-2'>" + $(".row.active .col-xs-7 p:last-child").text() + "</div><div class='col-xs-2'>1</div>");

Используйте .html()

$('#inprog_table').html(function (_, old_html) {
    return old_html + "<div class='row'><div class='col-xs-7'>" + $(".row.active .col-xs-7 p:first-child").text() + "</div><div class='col-xs-2'>" + $(".row.active .col-xs-7 p:last-child").text() + "</div><div class='col-xs-2'>1</div>"
});

Ещё вопросы

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