【问题标题】:Is it possible to add a variable into a jquery select function [duplicate]是否可以将变量添加到 jquery 选择函数中[重复]
【发布时间】:2014-03-24 11:32:30
【问题描述】:

您好,我想选择一个与我的 $id 变量同名的类的 div。

如果我自己添加 div id,一切正常,但我希望它基于我的 $id 变量。

这是可能的还是有更好的方法来根据单击的按钮定位正确的 div?

$('.checkbox-group').find('input[value=button]').click(function() { //find all buttons with value=button

var $toggle = $(this); 
//add buttons in variable $toggle

var $id = $( this ).attr('id');                                     
//add the clicked button´s ID in the variable $id

if ($toggle.prop('checked') === true) {                             
//if the clicked button is checked 

$('#my-grp div.$id').removeClass('kill');                       
//want to select the div with Class that have same name as my $id variable

} else {
//and then add or remove the class .kill

$('#my-grp div.$id').addClass('kill');                          
}
});

【问题讨论】:

  • 包含一些示例 HTML,以便我们查看您的代码要执行的操作。
  • 这是 JavaScript 而不是 PHP。在您的 var 之前您不需要 $ 并且它不会在字符串中看到您的变量。您需要连接,就像在答案中一样。

标签: javascript jquery html css


【解决方案1】:

解决方案只是一个简单的字符串连接:)

$('#my-grp div.' + $id).removeClass('kill');

【讨论】:

  • 感谢您快速简单的回答:D
【解决方案2】:

jQuery 不会处理字符串引号中的变量,您应该将其连接起来。

而不是这个:

$('#my-grp div.$id').removeClass('kill');

写这个:

$('#my-grp div.' + $id).removeClass('kill');

编辑:哎呀,看起来有人更快:)

【讨论】:

    【解决方案3】:

    您可以连接字符串和变量。在你的情况下是这样的:

    $('#my-grp div.' + $id ).removeClass('kill');
    

    旁注: javascript 中的变量不需要$。在您的情况下,id 将是一个更好的变量名来存储字符串。

    $ 通常用于存储 jquery 元素,如$toggle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-06
      • 2018-03-08
      • 1970-01-01
      • 2015-05-05
      • 1970-01-01
      • 2017-04-07
      • 2023-04-03
      • 2020-06-08
      相关资源
      最近更新 更多