16

我想在字符串中使用变量。我尝试过很多次,但它只是获取变量名。

<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>
4

7 回答 7

34

可以+按如下方式进行连接。

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

参考:

于 2012-06-15T10:52:53.787 回答
13

您还可以使用模板文字:

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

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

于 2017-07-19T11:47:23.447 回答
3

我觉得这是一种更简单有效的方法。(使用``)

$(".html").html(`<div class="new" id="${id}">jitender</div>`)
于 2020-04-28T10:30:41.117 回答
1
<script type="text/javascript">
$(function(){
$("a").click(function(){
    var id= $(".id").html();
    $('.html').html("<div class='new' id='"+id+"'>jitender</div>");
    })
})

于 2012-06-15T10:57:22.907 回答
1

这样做的正确方法是利用 jQuery 的 HTML 构造函数为您执行所有必要的转义:

$("a").click(function() {
    var id= $(".id").html();
    // create new element
    $('<div>', { 
        class:'new', 
        id: id, 
        text: 'jitend'
    }).appendTo('.html'); // and append it
});
于 2014-07-14T17:52:23.580 回答
-1

试试这个

$(".html").html("<div class='new' id='"+id+"'>jitender</div>")
于 2012-06-15T10:53:48.820 回答
-2

Javascript 不支持在双引号内扩展变量。关闭(并重新打开)引号并使用 + 运算符,就像您已经做的那样。

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

id是变量

于 2012-06-15T10:55:09.823 回答