私は、入力隠しタグの値を変更する関数を持っています。私はこの入力( "change"イベント)を聞くリスナーを登録しました。しかし、入力の値がプログラムで(ユーザーの介入ではなく)変更されているので、ハンドラーは決して実行されません。しかし、私はその入力の値が変わるたびにハンドラを実行する必要があります。これを達成するための回避策はありますか?イベントの質問
イベントの質問
答えて
element.onchange();
私が指摘したように、onchange()は機能しません。入力タグにtype = "hidden"を削除して、手動で入力フィールドに値を入力した場合にのみ、ハンドラが呼び出されます。そうでなければ、プログラムで値を変更すると、ハンドラは決して呼び出されません。 –
申し訳ありませんが、私の投稿が不明な場合。つまり、 'theElement.onchange();'を実行することでハンドラを手動で呼び出す必要があります。しかし、最初に 'this = theElement;')を変更する必要があります。 –
あなたは、単に実行して、JavaScriptで変更イベントを呼び出すことができます。
document.getElementById('id').onchange()
あなたはjQueryのを使用している場合、それはあなたが探しているもの$(element).change()
だ、ですa Mutation Event。ブラウザでのサポートはひどく欠けていますが、今サポートマトリックスを見つけることさえできません。 のみを使用している場合は、this oneのようなプラグインを試すこともできますが、$ .attr関数を呼び出すと動作します。
もう一つの選択肢は、custom eventsをjQueryで使用することですが、これは値を変更するときにハンドラを直接呼び出すよりも簡単です。
これが役に立ちます。
属性の変更を監視するための一貫性のあるブラウザ間の方法はありません。 maksymkoはあなたが探しているのは突然変異の出来事ですが、彼が述べたように、彼らは広く支持されていません。
入力値に変更が必要な場合にコードで使用されるAPI /メソッドを設定することが最も確実です。これは不完全で未来が壊れていますが、それだけではありません。
多くの図書館では、値を変更すると、直接あなたのハンドラを呼び出すことについて、このようなjQueryのか由井3
- 1. Last.fmイベント会場の質問
- 2. フレックス結果イベント...質問
- 3. UILabelのイベントについての質問
- 4. イベントとカスタムサーバーコントロールについての質問
- 5. javascript - 基本的なonclickイベントの質問
- 6. IsClientScriptIncludeRegistered質問ASP.NETユーザーコントロールのPage_Loadイベントで
- 7. DataGridViewイベントに関する質問
- 8. Prologの質問の質問
- 9. 質問の質問Django
- 10. 質問と代理質問
- 11. 質問:MySQLグループ質問:
- 12. SQLソート/ページング質問質問
- 13. PHPの場合の質問質問
- 14. EMITイベントの角2は、質問へのフォローアップとして、
- 15. JavaScriptのイベント実行についての質問
- 16. Spring Integration質問:CRUD操作とコンポーネント間のイベントの共有
- 17. MYSQLの質問質問検索
- 18. CakePHP質問作成の質問
- 19. クイックjQuery質問:イベントの伝播を停止しますか?
- 20. ASP.net c#簡単な質問パラメータ質問
- 21. MYSQL:複雑な質問質問
- 22. Verilogの質問
- 23. インラインアセンブラの質問
- 24. インラインモーダルウィンドウの質問
- 25. 質問のポップアップウィンドウ
- 26. NSMutableArrayの質問
- 27. レイアウトの質問
- 28. 質問のヘルプ
- 29. イベントソースの質問
- 30. レールレンダリングの質問
Hm..whatとして、このための場所でいくつかの配管がありますか? – sje397