0

我有一个将 HTML 记录到 DIV 中的 JS 函数: $("#DivHtml").html('what i want...')

HTML 也有 <select> with optionlist

选择有 EVENT-onchange

此事件调用Jquery函数更改 HTML 并添加属性(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 回答