问答详情
源自:3-1 jQuery的属性与样式之.attr()与.removeAttr()

函数不是从上往下读的吗?比如说我在写了函数1和函数2 函数1设置input的属性 函数2去除input属性 为什么这样函数1就不工作了呢?之后的函数会影响之前的吗?如果设置才能不影响呢?

 <script type="text/javascript">

    //找到第三个input,通过使用一个函数来设置属性

    //可以根据该元素上的其它属性值返回最终所需的属性值

    //例如,我们可以把新的值与现有的值联系在一起:

    $("input:gt(2)").attr('value',function(i,val){

    return '通过function设置' + val

    })

    </script>


    <script type="text/javascript">

    //找到第四个input,通过使用removeAttr删除属性

    $("input:nth-child(4)").removeAttr('value')

    </script>

提问者:qq_世界左右丈量阳光_0 2017-10-03 20:14

个回答

  • 河东行雨
    2017-10-04 10:53:03
    已采纳

    4个input的话两个函数都是作用于第四个input,第二个函数已经移除了value,所以文本框里面应该没有文字了。

    函数是从前往后执行,采用就近原则,并不涉及到广义的函数相互影响的问题。

  • 河东行雨
    2017-10-03 23:37:57

    $("input:gt(2)")选定的是index>2的所有input(这里以5个input为例,由于index从0开始,即本例选中了第4,5个input)执行结果如下:

    http://img4.mukewang.com/59d3ada60001c31110500708.jpg

    如果要选择第三个input,则要将$("input:gt(2)")改为$("input.eq(2)")。