2012-06-15 26 views
6

Tôi muốn sử dụng một biến trong một chuỗi. Tôi đã cố gắng làm điều đó nhiều lần, nhưng nó chỉ nhận được tên biến.cách sử dụng biến trong chuỗi trong 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> 

Trả lời

15

Kết hợp có thể được thực hiện với + như sau.

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

tham khảo:

+0

u có thể xin cho tôi biết là những gì lừa hoặc phương pháp – Carlos

+0

@amit Đây là chuỗi nối. Bạn có thể đọc về nó trong [** MDN **] (https://developer.mozilla.org/en/JavaScript/Reference/Operators/String_Operators). – VisioN

+1

Không bao giờ nối trực tiếp dữ liệu tùy ý vào HTML. Bạn không thoát khỏi bất cứ điều gì, mở ra cho mình các vấn đề về HTML và tiêm không hợp lệ. – Brad

-1

Hãy thử điều này

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

Không bao giờ nối trực tiếp dữ liệu tùy ý vào HTML. Bạn không thoát khỏi bất cứ điều gì, mở ra cho mình các vấn đề về HTML và tiêm không hợp lệ. – Brad

-2

Javascript không hỗ trợ biến mở rộng bên trong dấu ngoặc kép. Đóng (và mở lại) các dấu ngoặc kép và sử dụng toán tử +, như bạn đã làm.

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

đây id là biến

+0

Không bao giờ nối trực tiếp dữ liệu tùy ý vào HTML. Bạn không thoát khỏi bất cứ điều gì, mở ra cho mình các vấn đề về HTML và tiêm không hợp lệ. – Brad

1
<script type="text/javascript"> 
$(function(){ 
$("a").click(function(){ 
    var id= $(".id").html(); 
    $('.html').html("<div class='new' id='"+id+"'>jitender</div>"); 
    }) 
}) 

1

Cách đúng để làm điều này là là bằng cách tận dụng constructor HTML jQuery để thực hiện tất cả các cần thiết thoát cho bạn:

$("a").click(function() { 
    var id= $(".id").html(); 
    // create new element 
    $('<div>', { 
     class:'new', 
     id: id, 
     text: 'jitend' 
    }).appendTo('.html'); // and append it 
}); 
Các vấn đề liên quan