jQuery 中使用变量的多个动态选择器

pep*_*epe 3 javascript jquery dynamic jquery-selectors

使用单个动态选择器我没有问题:

var answer_id = <?php echo $answer_id; ?>;

$('#a_flag_' + answer_id).click(function(e) {
        e.preventDefault();

         //Ajax etc...
Run Code Online (Sandbox Code Playgroud)

但是如果我添加了几个动态选择器,它们就不起作用(即,Firebug 控制台上没有错误,但单击时也没有动作):

var answer_id = <?php echo $answer_id; ?>;

$('#a_flag_' + answer_id,'#a_comments_link_' + answer_id,'#a_best_answer_' + answer_id).click(function(e) {
        e.preventDefault();

         //Ajax etc...
Run Code Online (Sandbox Code Playgroud)

任何想法我做错了什么?

Poi*_*nty 5

您需要带引号的常量字符串中使用逗号。

$('#a_flag_' + answer_id + ', #a_comments_link_' + answer_id + ',  #a_best_answer_' + answer_id).click(// ///
Run Code Online (Sandbox Code Playgroud)

你想要结束的是一个看起来像的字符串

"selector, selector, selector, ..."
Run Code Online (Sandbox Code Playgroud)

所以你需要用逗号连接一堆字符串。

或者,您可以在字符串数组中构建单独的选择器,然后使用逗号分隔符(“.join()”的参数)“.join()”它们。