我想在javascript中创建一个动态元素并更改内容并将其附加到正文,购买不起作用
var template = "<div class='ooo'>old message</div>";
$(template).find(".ooo").html("new message");
$("body").append(template);
它返回旧消息,似乎JQUERY直接使用内部DOM,
答案 0 :(得分:3)
修改jQuery对象不会更新创建它的字符串文字
var template = "<div class='ooo'>old message</div>";
var $tmpl = $(template);
$tmpl.filter(".ooo").html("new message");
$("body").append($tmpl);
演示:Fiddle
同样在给定模板中,您需要使用.filter()而不是.find(),因为$ tmpl引用.ooo
元素 - 您甚至可以完全删除它,因为{{只有一个元素1}}