很抱歉标题不好,但我有类似以下代码的内容
$('[data-value]').each(function() {
var $this = $(this);
$this.val($this.data('value'));
});使用
<select data-value="14:00">
<option>12:00</option>
<option>13:00</option>
<option>14:00</option>
<option>15:00</option>
</select>这样做的目的是在列表中轻松地预先选择“数据值”。
除了在页面初始化后添加select元素之外,代码运行得很好。
例如,这不会起作用
$('body').append('<select data-value=yellow><option>black</option><option>yellow</option><option>red</option></select>');那么,即使我在页面初始化后添加了DOM元素,如何才能使其正常工作呢?
谢谢
发布于 2012-07-13 17:09:02
好的,所以你可以使用类似这样的东西:
它检查新的select元素,如果找到一些没有“处理”类的元素,就对它们进行处理。
function checkNewSelects() {
$('select').not(".processed").each(function() {
var $this = $(this);
$this.val($this.data('value'));
$this.addClass('processed');
});
setTimeout(checkNewSelects, 300);
}
setTimeout(checkNewSelects, 300);https://stackoverflow.com/questions/11466823
复制相似问题