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

暂时没有想到什么好的解决办法,我现在加了个浏览器判断非ie的话就注册blur事件,这样有个问题就是blur实在别的控件活动焦点的时候,txtStation控件注册的方法是为了填充它紧挨着的一个下拉列表
一直没什么兴趣看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)

}

时间: 2024-08-04 03:36:48

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

文本框改变事件

//文本框改变事件 $('.text_name').bind('input propertychange', function() { $('.text_div_all').css('display','none'); }); demo:http://jsfiddle.net/PVpZf/

JQuery简单的按钮点击和文本框输入事件

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getS

Jquery中使用setInterval和setTimeout会提示缺少对象的错误,解决方法如下:

直接在ready中调用其他方法,会提示缺少对象的错误,解决方法如下: 方法1. 应用jQuery的扩展可以解决这个问题. $(document).ready(function(){ $.extend({  show:function(){   alert("ready");  }});setInterval("show()",3000);}); 方法2. 指定定时执行的函数时不要使用引号和括号.  $(function(){function show(){   al

HTML中让表单input等文本框为只读不可编辑的方法

<转> 方法1: onfocus=this.blur() <input type="text" name="input1" value="中国" onfocus=this.blur()> 方法2:readonly <input type="text" name="input1" value="中国" readonly> <input type=&

GridView里的文本框改变事件

<asp:TemplateField HeaderText="实收数量"> <ItemTemplate> <asp:TextBox ID="txtorgqty" runat="server" Text='<%# string.Format("{0:0.##}",Eval("orgqty")) %>' Width="100px" Visible=&

完美解决监听文本框改变事件

$('input').bind('input propertychange', function() {  //进行相关操作 });

文本框改变事件(不用失去焦点)

<script>var OldValue = "";function txt_Change(NewValue){    if (OldValue != NewValue)    {        alert(NewValue);        OldValue = NewValue;    }}</script><body"><input  type="text"  onKeyUp="txt_Change

jQuery中的live绑定多个事件整理

在1.4.0之前(不包含1.4.0)无法使用多个绑定的,单个示例为: $('.clickme').live('click', function() { // Live handler called. }); 1.4.0-1.4.2开始支持了,实例如下: $('.hoverme').live('mouseover mouseout', function(event) { if (event.type == 'mouseover') { // do something on mouseover }

jQuery中的bind() live() delegate()之间区别分析

jQuery中的bind() live() delegate()之间区别分析 首先,你得要了解我们的事件冒泡(事件传播)的概念,我先看一张图 1.bind方式 $('a').bind('click',function (){ alert('click'); }) 解析:这种方式最简单,jq扫描文档找出所有的a,让将函数绑定到每个元素的click事件上 2.live方式 $('a').live('click',function (){ alert('click'); }) 解析:jq将函数绑定到$