我使用以下代码填充选择框的选项。
function generateTerms(x){
var optList = new Array(1,2,3,4,5,6,7,8,9,10,11,12,0);
$.each(optList, function(i, value) {
if(value==0){var text='Continuous';}
else if(value==1){var text=x;}
else{var text=x+'s';}
$('#term').append($('<option>', { 'value': value, 'text' : text }));
});
$("#term").trigger("liszt:updated");
}
使用此选项将是generateTerms('Year');
我的问题是,如果您观看代码但它没有更新jquery显示系统,它会更新选择框生成正确。我以为.trigger("liszt:updated");
会这样做,但由于某种原因它不会。我正在寻找正确的功能来运行。
答案 0 :(得分:0)
liszt:updated
是一个自定义事件,触发/绑定它非常简单。这是一个演示:
var $term = $('#term'),
$log = $('#log'),
$button = $('button');
$term.on('liszt:updated', function (event) {
$log.html($log.html() + 'Updated at ' + (+new Date()) + '<br>');
});
$button.on('click', function (event) {
$term.append($('<option>', {
value: (+new Date()),
text: (+new Date())
}));
$term.trigger('liszt:updated');
});
我的猜测是你没有绑定($('#term').on('liszt:updated')
)你正在使用的自定义事件。