JQuery下focus()无法自动获取焦点的处理方法 jquery如何使文本框获得焦点

今天遇到了一点儿小问题,本来想实现的是说:input文本框中要有数据才可以提交,但是如果没有数据的话,就提示需要输入信息,然后自动获取焦点。

       如果这是在纯js的环境下,很简单,就用.focus()就可以了。但是在jQuery中会遇到一些问题:

 如果使用focus()函数触发每一个匹配元素的focus事件。这将触发所有绑定的focus函数。所以但我们使用这个方法$("#input")返回的就不是DOM对象,而是JQuery对象。

       但是JQuery中也有提供很好地方法将一个JQuery对象转化为一个DOM对象:

       $(”#Input”)[0].focus(); 

       这样这个问题就能都都解决了。  

     补充一下:什么是DOM对象?什么是JQuery对象?

       DOM对象,即是我们用传统的方法 (javascript)获得的对象, jQuery对象即是用 jQuery类库的选择器获得的对象。注意:在jQuery对象中无法使用DOM对象的任何方法。同样,DOM对象也不能使用jQuery方法。

       两种对象之间可以相互转化,将一个JQuery对象转化为一个DOM对象:有两种方法即[index]和get(index),将一个DOM对象转化为一个jQuery对象:只需要用$()把dom对象包装起来,就可以获得一个jquery对象了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值