ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery_jquery でイベントとテキスト ボックス変更イベントをバインドするための一時的な解決策

jQuery_jquery でイベントとテキスト ボックス変更イベントをバインドするための一時的な解決策

WBOY
WBOYオリジナル
2016-05-16 18:21:181099ブラウズ

私は jQuery を読むことにまったく興味がなかったので、今日関数を書いているときに試してみようと思って、下手な JavaScript に固執しましたが、イベントを登録するためにバインドを使用したところ、機能しないことがわかりました。 🎜>

コードをコピー コードは次のとおりです:
$("#txtStation").bind( "onpropertychange", GetStationLevel);

そこでonclickなどを試しましたが、jQueryのAPIを調べるしかありませんでした。 jQuery API ですが、バインド登録イベントがオンになっていないことがわかりました。
変更イベントを見つけたので試してみました

コードをコピーします コードは次のとおりです:
$ ("#txtStation").change(function(){alert('change')});

onchange と同じように、フォーカスが失われるまでアクティブにならないことがわかりました。使えません。
試してみようと思い、onpropertychange の前の on を削除しました。とにかく、HTML 自体がイベントをサポートしているかどうかは関係ありません。仕事。うまくいくとは思っていませんでした。 IE には問題はありません。Firefox で使用できる必要があるのは、クロスブラウザーの話ではありません。
Firefox では oninput イベントを使用するように言われています。試してみましたが、機能しませんでした。私の入力ボックスはセンサーベースであり、単語を入力したときにのみ有効になります。 、この単語で始まるものを選択すると、oninput がアクティブになりません。
今のところ、ブラーイベントが IE ではないと判断された場合にブラウザを追加しました。問題は、ブラーが他のコントロールのアクティブなフォーカスである場合です。 txtStation コントロールの登録方法は、その隣のドロップダウン リストに入力することで、txtStation のコンテンツを書き込んだ後にドロップダウン リストが選択された場合にのみぼかしがトリガーされます。2 回目の更新がありますが、大きな影響はありません。 , ただし、ユーザーの最初のクリックは無効です。誰か良い方法があれば教えて下さい。

コード

コードをコピー コードは次のとおりです。
if( $.browser .msie)
{
$("#").bind("propertychange", GetStationLevel)
}
else
{
$("#").bind("blur", GetStationLevel)
}

正面から見ると、タイトルには何も書かれていませんが、かなり印象的です(笑)。忘れてしまいそうなのでメモしておきます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。