コンボボックスの変更イベントに基づいて非表示の入力項目を更新しようとしています。特定のクラス(「test1」)の場合、コンボボックスに動的に変更するドロップダウンがたくさんあります。ここで見つけたjqueryを使用して、「オープン」コンボボックスを取得していることを付け加えたいと思います....つまり、オプションリストで利用できるものだけでなく、ユーザー入力を受け入れるものです。この目的のために、ここで提供されている JavaScript を使用しました: jQuery コンボボックス/オートコンプリート、しかし編集可能
ただし、次のいずれかのみが機能します...
$(document).ready(function () {
$(".test1").combobox();
});
$(document).ready(function () {
$(".test1").change(function () {
alert('test'); //Other logic to update hidden elements.
}
);
});
関数をコメントアウトすると、ドロップダウンがコンボボックスに変わり、アラートが発生します。アラート機能をオフにすると、コンボボックスの呼び出しが機能し、ドロップダウンがコンボボックスに変わります。誰でも解決策を提案できますか?
アップデート:
これが機能しない理由がわかりました(少なくともそう思います)。上記のリンクでは、コンボボックスの変更動作は既に処理されています。追加の変更イベント ハンドラが登録されません。コードを変更イベント自体に追加する必要がありました (このスニペットのように):
change: function (event, ui) {
var selset = "CHF Discharge Diagnosis";
$(':hidden').filter($('input[selsetname="' + selset + '"]')).val(this.value);
alert($(':hidden').filter($('input[selsetname="' + selset + '"]')).val());
if (!ui.item) {
var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex($(this).val()) + "$", "i"),
valid = false;