为了账号安全,请及时绑定邮箱和手机立即绑定

就是这个问题$("input:eq(2)").attr('value',function(i, val)

我以提问的方式,说说我的理解,希望评论指出我的错误。

<form>
        <input type="text" value="设置value" />
        <input type="text" value="获取value"/>
        <input type="text" value="回调拼接value" />
        <input type="text" value="删除value" />
    </form>
    
    <script type="text/javascript">
    	//i是当前选择元素的索引值,val是当前选择元素的当前属性值
    	$("input:eq(2)").attr('value',function(i, kengdie){
    		return '通过function设置' + kengdie
    	})
    </script>

先把多余的删掉,然后把原本的变量val改成kengdie,对!

1、首先,$("input:eq(2)").attr('value',function(....))设置(替换)当前input的value值为function(...)

2、function(i,kengdie),i就是指当前($("input:eq(2)"))的索引值,kengdie这个变量是获取当前的value值,因为.attr('value',function(....))目的是要设置value值,所以function(i,kengdie)就是获得当前的value值(据说是回调函数???)

3、return '通过function设置' + kengdie。容易理解。

所以结果是:“通过function设置回调拼接value”。

好像input 的长度不够啊真坑爹,误以为看到的是“通过function设置回调拼接val”,其实把文字拉右边就能看到ue了。加上坑爹的变量名val!误以为是变成val!


所以就这样理解吧。

正在回答

3 回答

大概像你说的一样,

    	$("input:eq(2)").attr('value',
    	function(i, val){
    		return '通过function设置' + val
    	}
    	)

attr的第一个参数是获取属性名,第二个参数是利用函数改变属性值。

你这样看这个function,传入两个参数,第一个参数接收eq的索引值,进行定位,测试:因为当你把eq(2)改为eq(1)时,对应的第二条input就会显示为通过function设置XXX。

第二个参数val,就如你所说的kengdie,接收--当前attr获取的属性名--的属性值,用--隔开看起来更容易理解一点

最后用return返回添加的内容和属性值

eg:你会更好理解用函数改变属性值,没有传参,理解起来就没有那么困难。

首先,第三条input需要加一个name

 <input type="text" value="回调拼接value" name="ddddd"/>

(把name的属性值设为value的属性值)

$("input:eq(2)").attr('value',
    	function(){
    		return this.name;
    	}
    	)

可以在代码区测试一下。相信你能理解。加油。

3 回复 有任何疑惑可以回复我~
#1

Mr_Jp黎 提问者

非常感谢!
2017-07-20 回复 有任何疑惑可以回复我~
#2

笑出强大_0 回复 Mr_Jp黎 提问者

不用哈
2017-07-20 回复 有任何疑惑可以回复我~
#3

QINGMU青木

如果i是接受eq()的参数值,为什么将参数i换成2后没有正确显示结果
2017-08-22 回复 有任何疑惑可以回复我~
#4

浮若绊笙 回复 QINGMU青木

i就是一个形参,你把 i 换成 2 就相当于说把 期中的形参i变成了形参2, 2是一个number ,你有见过形参直接定义成数字的吗
2017-09-06 回复 有任何疑惑可以回复我~
#5

桃子橙子柚子

3Q 灰常
2017-09-13 回复 有任何疑惑可以回复我~
查看2条回复

看不懂耶

0 回复 有任何疑惑可以回复我~

我还是初学者

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

就是这个问题$("input:eq(2)").attr('value',function(i, val)

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信