首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从页面加载jquery上具有相同类名的多个div获取特定属性值。

从页面加载jquery上具有相同类名的多个div获取特定属性值。
EN

Stack Overflow用户
提问于 2018-07-31 09:31:38
回答 6查看 1.5K关注 0票数 4

我有一个带有HTML的网页,类似这样。我想对类swatch-选项隐藏背景,并在div中呈现选项标签。

但我无法得到选项标签。

代码语言:javascript
复制
$(document).ready(function() {
  if ($('div.swatch-option').hasClass('color')) {
    console.log($(this).attr('option-label'));
  }
});
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="swatch-attribute swatch-layered color" attribute-code="color" attribute-id="93">
  <div class="swatch-attribute-options clearfix">
    <a href="#" aria-label="Black" class="swatch-option-link-layered">
      <div class="swatch-option color " tabindex="-1" option-type="1" option-id="49" option-label="Black" option-tooltip-thumb="" option-tooltip-value="#000000" style="background: #000000 no-repeat center; background-size: initial;"></div>
    </a>
    <a href="#" aria-label="Red" class="swatch-option-link-layered">
      <div class="swatch-option color " tabindex="-1" option-type="1" option-id="50" option-label="Red" option-tooltip-thumb="" option-tooltip-value="Red" style="background: Red no-repeat center; background-size: initial;"></div>
    </a>
  </div>
</div>

这是我正在尝试的代码。但它显示的是未定义的。使用class = "swatch-attribute swatch-layered"在页面上有更多的div,与swatch-attribute-optionsswatch-option类类似的还有更多的div。所以这有点复杂。有人能帮我得到这个值吗?这样我就可以禁用背景值,并将值等于选项标签。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2018-07-31 09:35:38

试着:

代码语言:javascript
复制
$('div.swatch-option.color').each(function() {
  console.log($(this).attr('option-label'));
});

使用上面的片段,您将得到类.swatch-option.color的所有divs然后迭代它们并使用$(this)访问它们的属性。

票数 3
EN

Stack Overflow用户

发布于 2018-07-31 09:35:56

$(this)在代码中没有上下文,您应该循环遍历div,然后this将引用div:

代码语言:javascript
复制
$(document).ready(function() {
  $('div.swatch-option.color').each(function() {
      console.log($(this).attr('option-label'));
  })
});
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="swatch-attribute swatch-layered color" attribute-code="color" attribute-id="93">
  <div class="swatch-attribute-options clearfix">
    <a href="#" aria-label="Black" class="swatch-option-link-layered">

      <div class="swatch-option color " tabindex="-1" option-type="1" option-id="49" option-label="Black" option-tooltip-thumb="" option-tooltip-value="#000000" style="background: #000000 no-repeat center; background-size: initial;"></div>
    </a>
    <a href="#" aria-label="Red" class="swatch-option-link-layered">
      <div class="swatch-option color " tabindex="-1" option-type="1" option-id="50" option-label="Red" option-tooltip-thumb="" option-tooltip-value="Red" style="background: Red no-repeat center; background-size: initial;"></div>
    </a>
  </div>
</div>

票数 1
EN

Stack Overflow用户

发布于 2018-07-31 09:39:17

您可以遍历所有具有swatch-option类的color div并检查option-label属性。

代码语言:javascript
复制
$(document).ready(function() {
  $('div.swatch-option.color').each(function(){
   console.log($(this).attr('option-label'));
  });
});
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="swatch-attribute swatch-layered color" attribute-code="color" attribute-id="93">
<div class="swatch-attribute-options clearfix">
   <a href="#" aria-label="Black" class="swatch-option-link-layered">                                                            
      <div class="swatch-option color " tabindex="-1" option-type="1" option-id="49" option-label="Black" option-tooltip-thumb="" option-tooltip-value="#000000" style="background: #000000 no-repeat center; background-size: initial;"></div>
   </a>
   <a href="#" aria-label="Red" class="swatch-option-link-layered">
     <div class="swatch-option color " tabindex="-1" option-type="1" option-id="50" option-label="Red" option-tooltip-thumb="" option-tooltip-value="Red" style="background: Red no-repeat center; background-size: initial;"></div>
    </a>
</div>
</div>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51610095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档