Javascript 如何在jQuery中获取元素的特定值

Javascript 如何在jQuery中获取元素的特定值,javascript,jquery,attributes,Javascript,Jquery,Attributes,我使用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: 3p

我使用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>
    
    
    
    • ...
    我需要获取
    数据id
    数据alid
    的值。我不知道如何得到这个值。我是jQuery的新手

    请任何人帮帮我。谢谢。

    执行此操作时:

    var img=$('li.selected');
    
    您选择的是
    LI
    元素,而不是
    IMG
    。你应该这样做:

    var img = $('li.selected img');
    
    此外,您不需要在jQuery中再次包装
    img
    ,只需执行以下操作:

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

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

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

    请尝试以下方法:

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

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