我有paper-menu
:
<paper-menu id="city-menu"></paper-menu>
我根据输入到另一个字段导致的ajax返回结果,使用jQuery添加项目。该字段并不重要,但我对ajax调用的成功函数是
function (data) {
if (data.success == 'true') {
menuItems = '';
$.each(data.data, function(index, city){
menuItems += '<paper-item id="'+city.id+'">'+city.name+'</paper-item>';
});
$('#city-menu').html(menuItems);
$('#city-menu').show()
} else {
$('#city-menu').hide()
}
}
但是现在我已经升级了我的Polymer组件,这条线不再有用了:
$('#city-menu').html(menuItems);
也就是说,而不是一系列&#39;纸张项目&#39;城市我得到一个div:
<div class="selectable-content style-scope paper-menu"></div>
(而且,是的,我已经确认menuItems
是我认为它应该是的。)另一方面,如果我做了一些愚蠢的事情
$('#city-menu').html('<h1>Hello World!</h1>');
然后它运作正常。
答案 0 :(得分:0)
因此,立即插入整个菜单而不是项目。在这种情况下,ajax调用的成功函数变为:
function (data) {
if (data.success == 'true') {
$('#city-menu').remove()
menuItems = '<paper-menu id="city-menu">';
$.each(data.data, function(index, city){
menuItems += '<paper-item id="'+city.id+'">'+city.name+'</paper-item>';
});
menuItems += '</paper-menu>';
$(menuItems).insertAfter('#city-id');
$('#city-menu').show()
} else {
$('#city-menu').hide()
}
}
令人惊讶的是,这是有效的。居多。