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

select()函数问题为什么点击了button按钮,input里的文字被选中?

select()函数问题为什么点击了button按钮,input里的文字被选中?此时只是借用了input里的函数,并没有人为的去选中文字,浏览器给弹了三次,第一次我想应该是点击button按钮触发input绑定的select事件,第二次弹应该是不知道是谁把input里的文字给选中了,所以会弹一个出来,第三次弹真是见鬼了,难道是前两次弹的都是button按钮上的click事件在起作用?只有第三次才真正是input发现自己被选中了,兴奋的弹了一下,吓尿了观众!

我最想知道的是button按钮click为什么会导致input选中文字,第一次弹的时候文字根本没被选中

正在回答

5 回答

点击click执行了select,select不就是选中文字的么$("#bt1").click(function(){
        $("input").select();
    })

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

这个函数会调用执行绑定到select事件的所有函数,包括浏览器的默认行为。可以通过在某个绑定的函数中返回false来防止触发浏览器的默认行为。

$("input").select(function(e){

        alert(e.target.value);

        return false;

    })

加上这句后的效果就比较好理解了,三次弹窗是受浏览器的默认行为的影响,去除就好了。

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

小小贝堡

select事件的浏览器默认行为也不是弹窗,为什么阻止默认行为就只会弹一次?这就是我一直想不明白的地方
2016-10-03 回复 有任何疑惑可以回复我~

$("input").select(function(e){

        alert(e.target.value);

        return false;

    })

form元素是有默认提交表单的行为,如果通过submit处理的话,需要禁止浏览器的这个默认行为
传统的方式是调用事件对象  e.preventDefault() 来处理, jQuery中可以直接在函数中最后结尾return false即可

别人是这么说的

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

.select()是jQuery事件函数。括号里为函数时,当select事件出发,会执行函数;括号里为空时,会执行select选中事件。

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

...╮( ̄▽ ̄")╭。。。表示没看懂

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

举报

0/150
提交
取消

select()函数问题为什么点击了button按钮,input里的文字被选中?

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