Javascript jQuery中使用变量的多个动态选择器
使用单个动态选择器,我没有问题:Javascript jQuery中使用变量的多个动态选择器,javascript,jquery,dynamic,jquery-selectors,Javascript,Jquery,Dynamic,Jquery Selectors,使用单个动态选择器,我没有问题: var answer_id = <?php echo $answer_id; ?>; $('#a_flag_' + answer_id).click(function(e) { e.preventDefault(); //Ajax etc... var-answer_-id=; $(“#a#u标志+答案id)。单击(函数(e){ e、 预防默认值(); //阿贾克斯等。。。 但是,如果我添加了几个动态选择器,
var answer_id = <?php echo $answer_id; ?>;
$('#a_flag_' + answer_id).click(function(e) {
e.preventDefault();
//Ajax etc...
var-answer_-id=;
$(“#a#u标志+答案id)。单击(函数(e){
e、 预防默认值();
//阿贾克斯等。。。
但是,如果我添加了几个动态选择器,它们将不起作用(即,Firebug控制台上没有错误,但单击时也没有操作):
var-answer_-id=;
$(“#a#u标志"+答案(id),#a#u评论(link)+答案(id),#a(最佳答案)+答案(id))。单击(函数(e){
e、 预防默认值();
//阿贾克斯等。。。
你知道我做错了什么吗?你需要在引用的常量字符串中加逗号
$('#a_flag_' + answer_id + ', #a_comments_link_' + answer_id + ', #a_best_answer_' + answer_id).click(// ///
您希望得到的结果是一个如下所示的字符串
"selector, selector, selector, ..."
所以需要用逗号连接一组字符串
或者,您可以在字符串数组中构建单独的选择器,然后使用逗号分隔符“.join()”将它们连接起来(参数为“.join()”)。您应该将coma放在字符串内部,而不是外部,并且忘记了加号
$('#a_flag_' + answer_id + ', #a_comments_link_' + answer_id +',#a_best_answer_' + answer_id)
当它开始看起来太复杂时,很可能是这样。 FWIW: 快乐编码
$('#a_flag_' + answer_id + ', #a_comments_link_' + answer_id +',#a_best_answer_' + answer_id)
var selectors = [
'#a_flag_' + answer_id,
'#a_comments_link_' + answer_id
// etc.
]
$(selectors.join(", ")).click(...)