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

关于attr使用函数赋值的问题,attr(属性名,函数值):设置属性的函数值。

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

       alert (i)

            alert(val)

    return '通过function设置' + val

    })

关于这段代码中的val为什么是原value值?不用调用自动传进去原value的值吗?http://img.mukewang.com/5990176000014ff711680211.jpg

提问者:为彭十七加油oO 2017-08-13 17:10

个回答

  • 浮若绊笙
    2017-09-06 15:05:54
    已采纳

    因为 jQuery框架背部会直接调用 函数,所以你就不需要去纠结 value的值是自动传入的还是需要你去调用 

    http://blog.csdn.net/qq_31971935/article/details/50585920

  • 浮若绊笙
    2017-09-06 14:55:51

    val 代表了 $('input:eq(2)') 内的 value 的当前的值,i表示是序列 也就是索引值,所以i 就是 $('input:eq(2)');

    .attr('value',function(i, val) 就是 :这个$('input:eq(2)') value 的值,不需要去调用传值

  • 取个好听的昵称
    2017-08-14 14:41:57

    要返回 this.val