2011-09-06 4 views
2

문자열에 인용 부호를 포함시키는 방법은 무엇입니까? 나는 이런 일을하고 싶지 :중첩 된 따옴표 HTML은 어떻게 포함합니까?

var stringvariable; 
$('#somediv').append('<a href id="someid" + onclick="doSomething("'+stringvariable+'")> MyLink"+</a>'); 
문제는 다음과 같은 부분과 관련이있다

: 나는 중첩 된 따옴표를 허용하려면 어떻게 onclick="doSomething("'+stringvariable+'")

을 내가 할 수 있어야하기 때문에 : onclick="doSomething("stringvalue")"

답변

1

대신 단일 qoutes를 사용하십시오.

onclick="doSomething('stringvalue')" 
+0

원래 문자열이 작은 따옴표로 묶여 있기 때문에 이스케이프없이 이스케이프 처리 할 수 ​​없습니다. – Matt

6

당신은 슬래시 \을 다시 사용하여 문자열 내에서 따옴표를 피할 수 있습니다 문자열 구분 기호 그래서 당신의 이점에 이것을 사용으로

var stringvariable; 
$('#somediv').append('<a href id="someid" + onclick="doSomething(\''+stringvariable+'\')> MyLink"+</a>'); 
+0

+1이 무엇을 설명하는지 +1합니다. – Eonasdan

0

자바 스크립트는 모두 '"를 사용합니다.

onclick="doSomething('value');" 
1

jQuery를 사용하는 경우, 전체적으로 사용하십시오. 다음은 유지하는 것이 더 쉬울 것 :

var $a = jQuery("<a></a>") 
    .attr("id", "someid") 
    .attr("href", "http://example.com") 
    .text("My Link") 
    .click(function() { 
    doSomething("stringvalue"); 
}); 
jQuery("#somediv").append($a); 
0

당신은 당신이 이것을 달성하기 위해 이스케이프를 사용할 수

onclick="doSomething(\"stringvalue\")"; 
2

를 사용할 수 있지만, 가독성, 나는 일을 좋을 것 :

$('#somediv') 
    .append('<a href id="someid">MyLink</a>') 
    .click(function() { 
     doSomething(stringvariable); 
    }); 
0

이 대체 방법은 어떨까요? 당신이하려는 일을 성취하고 좀 더 가독성을 가지기를 바랍니다.

var stringVariable = "foo"; 

$('<a/>', 
    { id: "someid", 
     text: "MyLink" 
    } 
).click(function() { doSomething(stringVariable) }) 
    .appendTo("#somediv");