作家
登录

jQuery中的bind绑定事件与文本框改变事件的临时解决方法

作者: 来源:www.28hudong.com 2013-03-30 01:22:34 阅读 我要评论

一直没什么兴趣看jQuery,就用自己那点不咋样的javascript硬撑着,今天写一个功能时想尝试一下,用bind注册事件时发现怎么都不好使 复制代码 代码如下: $("#txtStation").bind("onpropertychange", GetStationLevel); 然后onclick之类的都试了,没一个能用的,无奈去翻jQuery的API,都是鸟语我也看不懂具体说了点了,但是发现bind注册事件都是没有on的。   发现有change事件,试了试 复制代码 代码如下: $("#txtStation").change(function(){alert('change')}); 发现是要等到失去焦点才会激活的跟onchange一样,我这用不了。   抱着试一试的想法我就吧onpropertychange前面的on删掉了,反正html不管本身写着支持不支持的事件只要你写上去没准都好使。没想到还真行。IE是没问题了,现在不都讲跨浏览器啊火狐下咱也得能用啊。   火狐下都说用oninput事件,我试了试不好使,oninput只在输入值的才会激发,我这输入框是带感应的,就是那种输一个字就把这个字开头的都感应出来可以选择那种,选择感应的项的话oninput就不激发了。   暂时没有想到什么好的解决办法,我现在加了个浏览器判断非ie的话就注册blur事件,这样有个问题就是blur实在别的控件活动焦点的时候,txtStation控件注册的方法是为了填充它紧挨着的一个下拉列表,这样写完txtStation的内容后选择下拉列表时才激发blur,有二次刷新出现,没啥大影响,只不过用户第一次点击无效了。谁有好方法告诉我一声。 代码 复制代码 代码如下: if($.browser.msie) { $("#<%=txtStation.TextBoxID%>").bind("propertychange", GetStationLevel); } else { $("#<%=txtStation.TextBoxID%>").bind("blur", GetStationLevel) }   看了看前面好像没写啥内容,标题挺有气势,哈哈。写一下是为怕自己忘记

  推荐阅读

  js更优雅的兼容

问题种种做底层接口兼容,无非就是利用if,判断客户端支持哪个接口的问题。最著名的例子就是事件: 复制代码 代码如下: var addEvent = function(e, what, how) { if (e.addEventListener) e.addEventListener(wha>>>详细阅读


本文标题:jQuery中的bind绑定事件与文本框改变事件的临时解决方法

地址:http://www.17bianji.com/kaifa2/JS/25852.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)