我有一个用于加载服务器数据项的 JavaScript 代码段,并将它们插入到 UL 元素中,生成的 LI 元素如下所示:
函数加载新文件模板(){
var list = _fileTemplateContainer.find("ul");
$.submitToServer("[服务器 URL]", null, function (data) {
list.empty();
如果(数据==“”){
list.append("模板不可用。"); // 在示例代码中,移除了 HTML 标签
}
别的 {
$.each(数据,函数(索引,项目){
var itemElement = $("[HTML 模板字符串]");
itemElement.find("div[data-field='image']").css("background-image", "url(" + item.icon + ")");
itemElement.find("div[data-field='caption']").text(item.caption);
itemElement.find("div[data-field='description']").text(item.description);
itemElement.find("div[data-field='type']").text(item.type);
itemElement.bind("点击", function (e) {
$(e.target).parents("ul").find("li").removeClass("projectSelected");
$(e.target).parents("li").addClass("projectSelected");
});
itemElement.appendTo(list);
});
}
控制台.log(列表);
});
}
此代码在第一次加载时有效,但在第二次加载时,UI 无法在元素插入 UL 元素后刷新。
我确认数据插入成功(使用console.log()输出结果),所以我找不到这个问题的原因。
如何解决这个问题?谢谢。
我的浏览器:Chrome 19.0.1084.56、IE 9.0.8112.16421 jQuery 版本 1.5.1