$("input:eq(2)").attr('value',function(i,val){ return '通过function设置' + val })
function中的 i 是干嘛用的?
太感谢了,谢谢你的分享
http://www.w3school.com.cn/jquery/attributes_attr.asp
如果在$(selector). attr ( name, function (index, oldValue){ } ) 的中包含了两个变量,如题中代码的‘i’和‘val’,选择器会向‘i’返回选择器的索引值,向‘val’返回‘i’$("input:eq(2)").eq[i] 所对应的属性值。
题中选择器只选择到一个,所以‘i’等于 0 。function只执行一次。
如果选择器选择到多个 ,function 会执行 i+1次,‘i’的值也会从 0 开始一次递增。
具体参见第一行网址。
i是一个参数,你可以设置了参数但是不一定调用
$(selector).attr(attribute,function(index,oldvalue))
上面是这个的语法原句(应该是吧)
selector是选择器。本题是input:eq(2)
attr是jQuery的属性操作方法
attribute是属性名,如:width,position,value等等,那后面这个函数其实就是个属性的值如:180px,absolute等等。本题中是value
index,oldvalue这两个值是很好理解的
index就是$(selector)这个东西数组的索引啊,index啊!input:eq(2) ,这个值他的答案是i,其实你用什么的都可以的,26个字母啥的都行,别非法就好,如
function(q,oldvalue) function(a,oldvalue) function(b,oldvalue)
oldvalue是attribute的原本的属性值,这个的名字也可以随便起的和上面一样,如
function(q,old) function(q,asd) function(q,wft)
本题中是下面那个的value的值
<input type="text" value="回调拼接value" />
同问呀,你们的回答我都没看明白
元素在匹配集合中的索引位置
应该是迭代变量!
index,
$("input:eq(2)")返回的是一个数组,i是在数组中的索引