会飞的辣翔
2016-09-06 16:15
select()函数问题为什么点击了button按钮,input里的文字被选中?此时只是借用了input里的函数,并没有人为的去选中文字,浏览器给弹了三次,第一次我想应该是点击button按钮触发input绑定的select事件,第二次弹应该是不知道是谁把input里的文字给选中了,所以会弹一个出来,第三次弹真是见鬼了,难道是前两次弹的都是button按钮上的click事件在起作用?只有第三次才真正是input发现自己被选中了,兴奋的弹了一下,吓尿了观众!
我最想知道的是button按钮click为什么会导致input选中文字,第一次弹的时候文字根本没被选中
点击click执行了select,select不就是选中文字的么$("#bt1").click(function(){
$("input").select();
})
这个函数会调用执行绑定到select事件的所有函数,包括浏览器的默认行为。可以通过在某个绑定的函数中返回false来防止触发浏览器的默认行为。
$("input").select(function(e){
alert(e.target.value);
return false;
})
加上这句后的效果就比较好理解了,三次弹窗是受浏览器的默认行为的影响,去除就好了。
$("input").select(function(e){
alert(e.target.value);
return false;
})
form元素是有默认提交表单的行为,如果通过submit处理的话,需要禁止浏览器的这个默认行为
传统的方式是调用事件对象 e.preventDefault() 来处理, jQuery中可以直接在函数中最后结尾return false即可
别人是这么说的
.select()是jQuery事件函数。括号里为函数时,当select事件出发,会执行函数;括号里为空时,会执行select选中事件。
...╮( ̄▽ ̄")╭。。。表示没看懂
jQuery基础(三)—事件篇
89997 学习 · 625 问题
相似问题