jQueryのbindバインドイベントとテキストボックス値の変更イベント解決方法

1338 ワード

ずっと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は入力値だけで励起されます.私のこの入力ボックスは誘導付きです.1文字負けてもこの字の先頭を誘導することができます.誘導の項目を選ぶとoninputは励起されません. 
しばらく良い解決策は考えられませんでしたが、私は今ブラウザを追加してieではないと判断してblurイベントを登録しました.このようにblurは現在のコントロールが活動の焦点を失ったとき、txtStationコントロールの登録方法は隣接するドロップダウンリストを埋めるためで、txtStationの内容を書き終わってからドロップダウンリストを選択したときにblurを刺激します.2回のリフレッシュが現れ、大きな影響はありませんが、ユーザーの最初のクリックは無効になりました.誰かいい方法があったら教えてください. 
コード#コード#
if($.browser.msie) 
{ 
$("#<%=txtStation.TextBoxID%>").bind("propertychange", GetStationLevel); 
} 
else 
{ 
$("#<%=txtStation.TextBoxID%>").bind("blur", GetStationLevel) 
} 

変換元:http://www.jb51.net/article/24566.htm