Как использовать переменную в строке в JQuery

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

<head>
    <script type="text/javascript" src="jquery-1.7.2.js"></script>
    <script type="text/javascript">
       $(function(){
          $("a").click(function(){
           var id= $(".id").html();
           $('.html').html("<div class='new' id=+id+>jitender</div>")
             });
       });
    </script>
</head>
<body>
   <div class="wrap">
      <a href="#">Make Html</a>
      <div class="html"></div>
      <div class="id">first</div>
   </div>
</body>

Ответы на вопрос(6)

$(".html").html("<div class='new' id='"+id+"'>jitender</div>")
 14 июл. 2014 г., 19:50
Никогда не объединяйте произвольные данные непосредственно в HTML. Вы не избежите чего-либо, открыв себя для недопустимых проблем HTML и внедрения.

ery для выполнения всего необходимого для вас экранирования:

$("a").click(function() {
    var id= $(".id").html();
    // create new element
    $('<div>', { 
        class:'new', 
        id: id, 
        text: 'jitend'
    }).appendTo('.html'); // and append it
});
Решение Вопроса

+ следующее.

$('.html').html("<div class='new' id='" + id + "'>jitender</div>");

Reference:

https://developer.mozilla.org/en/JavaScript/Reference/Operators/String_Operators
 15 июн. 2012 г., 12:57
@amit Это конкатенация строк. Вы можете прочитать об этом вMDN.
 14 июл. 2014 г., 22:37
@VisioN Помните, что ваши ответы будут использоваться в иных контекстах, чем буквальный код вопроса. Особенно в случае разметки на странице, если вы хотите использовать это как текст в контексте HTML, вы должны убедиться, что любые объекты HTML экранированы должным образом. Что бы ни стоило, этот вопрос и ваш ответ были связаны с другим подобным вопросом. Я отклонил ваш ответ, потому что он не содержит предупреждения о контексте, в котором он может быть использован. Мой комментарий должен предупредить людей. Наконец, я не знаю, кто мой «друг». является. Другие могут голосовать как им угодно. Не принимайте это на свой счет.
 Carlos15 июн. 2012 г., 12:54
Можете ли вы сказать мне, что такое трюк или метод
 14 июл. 2014 г., 19:46
Никогда не объединяйте произвольные данные непосредственно в HTML. Вы не избежите чего-либо, открыв себя для недопустимых проблем HTML и внедрения.
 14 июл. 2014 г., 22:15
@Brad Произвольные данные? Когда содержимое локального узла стало произвольными данными? В этом примере значение переменнойid это просто внутренняя разметка другого элемента DOM, а не значение cookie / input / query_string. Как правило, ваш комментарий имеет смысл, но только как примечание, которое не имеет ничего общего с конкатенацией строкproblem поднял здесь. Я очень рад, что вы (и ваш друг) нашли этот старый бесполезный вопрос (который стоит закрыть как «не надо учиться, я хочу учиться») в SO мусорное ведро с тегом "JavaScript" и потратил свое время и 12+ баллов за даунтинг.
<script type="text/javascript">
$(function(){
$("a").click(function(){
    var id= $(".id").html();
    $('.html').html("<div class='new' id='"+id+"'>jitender</div>");
    })
})

$('.html').html(`<div class='new' id=${id}>jitender</div>`)

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals

 04 янв. 2019 г., 23:58
Не поддерживается Internet Explorer

к. Закройте (и снова откройте) кавычки и используйте оператор +, как вы уже сделали.

"<div class='new' id='" + id + "'>"

Вотid является переменной

 14 июл. 2014 г., 20:06
Никогда не объединяйте произвольные данные непосредственно в HTML. Вы не избежите чего-либо, открыв себя для недопустимых проблем HTML и внедрения.

Ваш ответ на вопрос