说我有代码:
$("#auto").append('<div id="' + results_id + '"></div>');
但我希望auto
成为字符串:
var string="auto";
然后我想用它作为:
$("\'+string+'\").append('<div id="' + results_id + '"></div>');
我不知道为什么,但这会引起一些错误。
有人告诉我,我们必须使用转义字符串以便以这种方式使用它,但后来不知道为什么,我没有任何运气。
答案 0 :(得分:1)
这样做:
$('#' + string)
答案 1 :(得分:1)
这就是你要找的东西:
var string = "auto";
$('#' + string).append('<div id="' + results_id + '"></div>');
答案 2 :(得分:1)
jQuery允许您为选择器使用变量而不会出现问题。您只需要记住调用正确的元素,因此如果您要求ID,请记住在string
变量值之前使用#。
var string="auto";
$("#"+string).append('<div id="' + results_id + '"></div>');
答案 3 :(得分:0)
写:
$('#' + string).append('<div id="' + results_id + '"></div>');
答案 4 :(得分:0)
你的qoutes没有正确嵌套,你也错过了尖锐的标志。也许尝试这样的事情:
$("#"+string).append('<div id="' + results_id + '"></div>');
答案 5 :(得分:0)
写:
var myString = '#' + MYID;
$(myString).append('<div id="' + results_id + '"></div>');
“一些解释”
希望这有帮助!
答案 6 :(得分:0)
<script>
var string = 'auto';
$("#"+string).append('THE STRING YOU WANT');
</script>
<div id="auto"><div>
我希望这会有所帮助。
答案 7 :(得分:0)
您实际上不必使用jQuery来解析符号本身。您可以以更好的方式创建<div />
:
$(document.getElementById(string))
.append($('<div />', {id: results_id}));
答案 8 :(得分:0)
基本问题是您混淆变量名称及其值。
"#auto"
是一个字符串。
如果我声明一个变量:
var myString = "auto";
然后注意变量 myString
包含值"auto"
。
在jQuery中,您可以通过使用$("#auto")
调用它来获取一个元素(在下面的示例中为div)进行操作 - 这意味着我想要在HTML页面上声明的页面元素: / p>
<div id="auto">...</div>
但是,因为您可以将字符串作为参数传递给特殊的$("#")
函数,以便#
之后的任何内容从抓取页。
因此,您可以使用上面示例中的$("#auto")
代替$("#"+myString)
之类的固定和预定参数来实现相同的结果,但现在可以通过操纵myString
的值来实现您可以使用相同的$("#"+myString)
执行大量操作,而无需反复使用确切的元素名称。
答案 9 :(得分:0)
var string = "auto";
$('#' + string).append(.....);
希望这是您问题的解决方案。
并且可以查看以下链接以了解有关选择器的更多信息。
https://css-tricks.com/forums/discussion/9766/jquery-selector-div-variable/p1