Javascript 我应该动态创建HTML元素还是简单地复制+;粘贴完整的片段
我经常发现,当我操作DOM并注入AJAX内容时,我将AJAX内容填充到某个复制+粘贴的HTML片段中,用新内容填充它,然后简单地将$().HTML()新代码插入DOM。。。下面的例子简单地说明了这一点Javascript 我应该动态创建HTML元素还是简单地复制+;粘贴完整的片段,javascript,html,ajax,dom,Javascript,Html,Ajax,Dom,我经常发现,当我操作DOM并注入AJAX内容时,我将AJAX内容填充到某个复制+粘贴的HTML片段中,用新内容填充它,然后简单地将$().HTML()新代码插入DOM。。。下面的例子简单地说明了这一点 $.post(url, {"input1": "postval1", "input2": "postval2"}, function (r) { if (r.data != undefined) { $("#element_id").html("<div class='class_a
$.post(url, {"input1": "postval1", "input2": "postval2"}, function (r) {
if (r.data != undefined) {
$("#element_id").html("<div class='class_a class_b class_c' id='some_id'><a href='" + r.data.href + "'><img src='" + r.data.src + "' /></a></div>");
}}, 'json');
$.post(url,{“input1”:“postval1”,“input2”:“postval2”},函数(r){
if(r.data!=未定义){
$(“#元素_id”).html(“”);
}}“json”);
虽然它对我来说总是很有用,但我想知道这是否是最有效的方法(对浏览器来说是最省力的/最快的),这是否是整个行业的标准过程?我想说的是,不要重复你自己,大多数MVC框架大部分时间都使用生成的HTML。这确实是一种偏好。老实说,我会选择正常的静态路线,在那里我只会生成需要生成的内容,并将其挂在特定的类或id上。这当然需要更多的思考工作,当然好处并不是那么巨大 真的是一种偏好。另外,由于您正在生成代码和操作调用,您可能希望使用.on('event'、'target'、'function')方式来定位按钮 如果您倾向于为非js浏览器和/或屏幕阅读器定制您的产品,这可能会有助于您的决策
快乐编码:)差别是可以忽略的。使用对你来说更易读的东西。已经回答:好。我发现W3CDOM操作方式过于臃肿,特别是在代码片段(如我的例子)非常复杂的情况下。我将坚持使用生成的HTML。