0

HTML を DIV に記録する JS 関数があります。 $("#DivHtml").html('what i want...')

HTMLには <select> withoptionリストもあります

選択には EVENT-onchange

HTMLを変更して属性を追加する関数へのこのイベント呼び出しJquery(DivHtmlのhtml)

しかし、関数が発生した後、

DivHtml の innerHTML を表示すると、HTML は最初と同じままであることがわかります。

彼はイベント onchange で機能から変更されていません (私は彼が機能に行ったと確信しています - 私は ALERT を行いました)

なぜ?

4

2 に答える 2

1

新しい htmlを追加するか、次のよう.onに (インラインの onchange を削除して)使用する必要があります。

$(document).on('change', '#selectID', function(){...});

PS:私はあなたが意味するもの<select>ではないと思います<selection>

于 2013-08-01T09:58:22.407 に答える
0

selectを介してdivのコンテンツを更新すると、添付したイベントが失われると言っていると思いますhtml()か?その場合、その理由は、イベントがバインドされた要素が DOM から削除され、その場所に新しい要素が追加されたためです。

最も簡単な解決策は、次のようにコンテナーにバインドされた、委任されたイベント ハンドラーを使用することです。

// your HTML updating logic
$("#DivHtml").html('what i want...')

// select change handler
$('#DivHtml').on('change', 'select', function() {
   alert('select value was changed');
});
于 2013-08-01T09:57:47.953 に答える