【问题标题】:How to get specific value of an element in jQuery如何在jQuery中获取元素的特定值
【发布时间】:2016-06-03 17:48:16
【问题描述】:

我使用 jQuery 插件开发了一个图片库。现在我需要选择所选图像的属性值。为此,我使用了以下代码。

var img=$('li.selected');
var comm = $("textarea#comm").val();
var dataid=$(img).attr('data-id');
var dataalid=$(img).attr('data-alid'); 

在 html 页面中选择的列表是:

<li class="selected" style="margin-right: 3px; width: 69px;">

这是以下列表:

<div class="es-carousel" id="loader">
<ul class="es-carousel">
<li><a href="#"><img src="data:image/jpeg;base64,/9j/4AAQSwAEASSlPA47U..../9kA"  alt="xyz" data-description="Retrieving images with jquery and servlet" data-id="1" data-alid="6"/></a></li>
 ...
</div>

我需要获取data-iddata-alid 的值。我不知道如何获得价值。我是 jQuery 的新手。

请任何人帮助我。谢谢。

【问题讨论】:

  • 而不是.attr();使用.data()
  • 就像一点……在大多数情况下,您不需要添加元素选择器。尤其是身份证。为了提高效率,您可以将选择器更改为var img = $('.selected img');$("#comm").val();。此外,由于变量 img 已经是一个 jQuery 对象,因此您不需要将其包装为 jQuery 对象,例如 img.attr('data-id'); 应该可以工作。

标签: javascript jquery attributes


【解决方案1】:

当这样做时:

var img=$('li.selected');

您选择的是LI 元素,而不是IMG。你应该这样做:

var img = $('li.selected img');

此外,您无需再次将img 包装在 jQuery 中,只需这样做:

var dataid = img.attr('data-id');

甚至:

var dataid = img.data('id');

【讨论】:

    【解决方案2】:

    第一行的变量名为 img,因此您可能是想在列表项中获取图像,但您只是获取列表项本身。

    试试这个:

     var img = $('li.selected img');
    

    【讨论】:

      猜你喜欢
      • 2021-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多