我正在使用jQuery动态地向下拉列表中添加元素,但我认为我正在混合语法并希望使用纯jQuery。目前我正在这样做:
$("#data-source-menu").addClass("menu-container")
.html($("<ul class=\"popup-menu\" id=\"dataset-menu\"><\/ul>"));
之后
$("#dataset-menu").append($("<div>" + dataset.label + "<\/div>").addClass("menu-item").attr(dataset));
这是我不喜欢的html的内部构建。是否有更抽象的方法来处理这个不涉及编写HTML的方法?类似JavaScript的document.createTextNode("Hello")
?
答案 0 :(得分:3)
那应该更好:
$('#data-source-menu').addClass('menu-container').html(
$('<ul/>').addClass('popup-menu').attr('id', 'dataset-menu').append(
$('<div/>').text(dataset.label).addClass('menu-item')
)
);
这里是the live demo。