sunny_desmond
carrykingdow
采纳率66.7%
2016-03-08 04:03

关于jquery 获取data属性值的问题


 <ul class="pics">
                    <li><a id="img1" href="javascript:choose(1);" title="梦幻玫瑰套装" data-img="1.png">梦幻玫瑰套装</a></li>
</ul>

  function choose(index){
    var data=$(".pics li:eq("+index+") a").data("img");
    alert(data);
}

为什么一直获取到undefined?求大神指导!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

7条回答

  • WinsenJiansbomber Jimbo 5年前

    大神你的选择器是我见过最复杂的!如果JQ真能识别说明JQ真的好用!,不过怕你不知道它选中的是什么!还有想要使用标签上的数据不用这么复杂,用属性方法就可以了$("div").attr("rel","value"),,读取时用$("div").attr("rel")

    点赞 评论 复制链接分享
  • sunny_desmond carrykingdow 5年前

    改版后的

     <ul class="pics">
                        <li><a href="javascript:choose(1);" title="梦幻玫瑰套装" data-img="1.png">梦幻玫瑰套装</a></li>
                        <li><a href="javascript:choose(2);" title="代币*40" data-img="2.png">代币*40</a></li>
                        <li><a href="javascript:choose(3);" title="高级经验糖果" data-img="3.png">高级经验糖果</a></li>
                        <li><a href="javascript:choose(4);" title="怦然心动(绿)1天" data-img="4.png">怦然心动(绿)1天</a></li>
                        <li><a href="javascript:choose(5);" title="柠檬花开套装" data-img="5.png">柠檬花开套装</a></li>
                        <li><a href="javascript:choose(6);" title="珍爱巧克力*4" data-img="6.png">珍爱巧克力*4</a></li>
                        <li><a href="javascript:choose(7);" title="彩虹桥 1天" data-img="7.png">彩虹桥 1天</a></li>
                        <li><a href="javascript:choose(8);" title="幸运宝石*40" data-img="8.png">幸运宝石*40</a></li>
                        <li><a href="javascript:choose(9);" title="香奈儿の恋套装" data-img="9.png">香奈儿の恋套装</a></li>
                    </ul>
    
     function choose(index){
        var data=$(".pics li:eq("+(index-1)+") a").data("img");
        // alert(data);
        var img=$("<img src='images/"+data+"' />");
        var src=img.attr("src");
        var divNum= $(".img").children().length;
        if(divNum==0){
        $(".img").append(img);
    
        }else{
            $("img").attr("src",src);
        }
    }
    
    点赞 评论 复制链接分享
  • showbo GoCityPass新加坡曼谷通票 5年前

    你那个是自定义属性,用attr,而且要写全来。data是存储数据,不是属性,你需要调用data('img','xxx')这样才能使用data('img')获取

       function choose(index){
        var data=$(".pics li:eq("+index+") a").data("data-img");
        alert(data);
    }
    
    点赞 评论 复制链接分享
  • Royal_lr Royal_lr 5年前

    版本是有多低

    点赞 评论 复制链接分享
  • sunny_desmond carrykingdow 5年前

    已解决了,发现公司用的JQ版本太低了。。。。。用新版本后就可以啦

    点赞 评论 复制链接分享
  • sunny_desmond carrykingdow 5年前

    可是我用
    var data=$("#img1").data("img");也不行。。。。

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 5年前

    调试下index多少,有没有找到a标签。

    点赞 评论 复制链接分享

相关推荐