<input type="text" value="回调拼接value" /> <script type="text/javascript"> //找到第三个input,通过使用一个函数来设置属性 //可以根据该元素上的其它属性值返回最终所需的属性值 //例如,我们可以把新的值与现有的值联系在一起: $("input:eq(2)").attr('value',function(i, val){ return '通过function设置' + val }) </script>
这段代码的运行结果是在这个imput里面显示了“通过function设置回调拼接value”这样一串string,没看懂这里的val是从哪里传进函数的,还有这个函数为什么要有一个参数i?
function(i, val)中两个参数i和val是默认写法(当然你写成其他的y,qwq也是可以的),解释一下,function(i, val)中两个参数的含义,第一个i是指通过前面$("input")标签找到的第几个input元素(但是这里指明了eq(2),所以只有唯一的一个指定的input。)val是对应第i个input标签里的值。即在这一题里面function(i, val)中val就是特指现有的值:"回调拼接value" 这个字符串
另外,可能由于屏幕原因,返回的结果是:“通过function设置回调拼接val”,全屏打开,其实完整的结果是:“通过function设置回调拼接value”。。是由:'通过function设置'+val 而来。不知道我说清楚了没有......