qflyalltime
小羊也疯狂
2018-05-10 07:15
采纳率: 88.4%
浏览 799

这里的jq选择器哪有问题?

想在一群li中选择一个index属性是我传入参数index1的li
图一 index1=10
图2 有两个li 但是选择器没选中
图3 第二个li里面的index明明为10

为什么不能选中呢

图片说明
图片说明
图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

8条回答 默认 最新

  • showbo
    已采纳

    组合变量值,你那样是直接查询index属性执行为index1内容了,不是index1存储的值

     $('li[index="'+index1+'"]')
    
    点赞 评论
  • Kiloveyousmile
    Kiloveyousmile 2018-05-10 07:22

    请参考jQuery手册,里面对这类选择器这样描述的:

    [attribute=value]   $("[href='#']") 所有 href 属性的值等于 "#" 的元素
    

    也就是说,value要是字符串。javascript在字符串中引变量的方式:

    $('li [index=${index}]')
    
    点赞 评论
  • sunny_desmond
    carrykingdow 2018-05-10 07:24

    如果我没记错的话 应该是这么写的吧。。。

    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
    <li>6</li>
    <li>7</li>
    
    
    $("li").each(function(index){
            $(this).on("click",function(){
                alert(index)
            })
    })
    
    
    点赞 评论
  • qq_35072960
    qq_35072960 2018-05-10 07:28

    $("li").eq(index10).addClass("alert");

    点赞 评论
  • Kiloveyousmile
    Kiloveyousmile 2018-05-10 07:33

    更正,javascript字串中变量替换的实现:

    $(`li[index=${index1}]`)
    
    点赞 评论
  • qflyalltime
    小羊也疯狂 2018-05-10 07:44

    图片说明
    图片说明
    图片说明

    点赞 评论
  • qflyalltime
    小羊也疯狂 2018-05-10 07:48

    图片说明

    点赞 评论
  • Kiloveyousmile
    Kiloveyousmile 2018-05-10 08:26

    更正,关于li选择器

    $(`li:eq(${index1})`)
    
    点赞 评论

相关推荐