我如何在字符串中包含引号?我想做这样的事情:
var stringvariable;
$('#somediv').append('<a href id="someid" + onclick="doSomething("'+stringvariable+'")> MyLink"+</a>');
问题与以下部分有关:
onclick="doSomething("'+stringvariable+'")
我如何允许嵌套双引号,因为我需要能够:
onclick="doSomething("stringvalue")"
答案 0 :(得分:6)
您可以使用反斜杠\
来转义字符串中的引号:
var stringvariable;
$('#somediv').append('<a href id="someid" + onclick="doSomething(\''+stringvariable+'\')> MyLink"+</a>');
答案 1 :(得分:2)
您可以使用转义来完成此操作,但为了易读,我建议您这样做:
$('#somediv')
.append('<a href id="someid">MyLink</a>')
.click(function() {
doSomething(stringvariable);
});
答案 2 :(得分:1)
请改用单引号。
onclick="doSomething('stringvalue')"
答案 3 :(得分: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);
答案 4 :(得分:0)
Javascript使用'
和"
作为字符串分隔符,因此请使用此功能。
onclick="doSomething('value');"
答案 5 :(得分:0)
你可以使用
onclick="doSomething(\"stringvalue\")";
答案 6 :(得分:0)
这种替代方法怎么样?将完成您正在尝试做的事情,并希望证明更具可读性:
var stringVariable = "foo";
$('<a/>',
{ id: "someid",
text: "MyLink"
}
).click( function() { doSomething(stringVariable) } )
.appendTo("#somediv");