Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 写入条件以添加属性_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 写入条件以添加属性

Javascript 写入条件以添加属性,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图向使用select2 jQuery库动态调用的元素添加属性 当页面打开时,span元素添加了一个select2 container类,我需要为每个span元素添加一个唯一的data bactmln属性值,该select2 container类 由于span嵌套在div中,并且每个div的设置如下: <div class="fieldset cr"> ... <span class="select2-container"></span> <

我试图向使用select2 jQuery库动态调用的元素添加属性

当页面打开时,
span
元素添加了一个
select2 container
类,我需要为每个
span
元素添加一个唯一的
data bactmln
属性值,该
select2 container

由于
span
嵌套在
div
中,并且每个
div
的设置如下:

<div class="fieldset cr">
   ...
   <span class="select2-container"></span>
</div>

试着把你的情况改成

if($('.cr').length > 0){
  $('.select2-container').attr('data-bactmln', 'CR_FeaturesDropdown');
}
如果
$('.cr')
有一个值,则其长度将大于0

if($('.cr').length>0){
$('.select2 container').attr('data-bactmln','CR_FeaturesDropdown');
log($('.select2 container').data());
}

...

$('span').hasClass('select2-container').attr('data-bactmln','CR_FeaturesDropdown')现在您只需要确定运行此代码的正确时间,否则它将在DOM就绪时初始化。您可以将其包装在
.bind()
函数
$(窗口).bind('load',function{})中将在页面加载后运行,但可能不一致。@UncaughtTypeError
hasClass()
不是一个筛选方法…它返回一个布尔值,
bind()
是deprecated@charlietfl哦,快!你说得很对。不是
$('.select2 container span').attr('data-bactmln','CR_FeaturesDropdown')工作?我猜您是在渲染元素之前阅读的
console.log($('.select2 container').length?“我在这里”:“我不在这里”)
if($('.cr').length > 0){
  $('.select2-container').attr('data-bactmln', 'CR_FeaturesDropdown');
}