jQuery.车把模板不渲染动态DOM追加

jQuery.handlebars template not rendering on dynamic DOM appending

本文关键字:动态 DOM 追加 jQuery      更新时间:2023-09-26

我一直使用动态DOM追加来初始化我的应用程序,使用jQuery。Handlebars作为模板库。但是jQuery的问题是。它不把模板呈现给动态调用的DOM。示例

   $(document).ready(function(){
         $('body').append('<div id="content"></div>');
         $('#content').render('default', {
         });
   )};

default是模板文件的默认值。所有模板路径正确初始化的HBS

但是在

index . html

    <div id="#content"></div>
jQuery文件
    $('#content').render('default', {
    });
jQuery的另一个问题。handlebars的特点是它不会使用jQuery在模板中添加任何元素。示例

default.hbs

    <div id="#append-content"></div>
jQuery代码
     $('#append-content").html('Hi');

但是内容"Hi"没有出现

这有点令人困惑,如果它是错误的,或者如果有任何反对使用jQuery的意见,请告诉我。车把,请建议一个新的模板库。

jquery。车把呈现方法是异步的。您试图在呈现完成之前追加到容器。渲染方法触发一个渲染。Handlebars的事件。在回调中进行DOM操作。

$('#content').render('template', {
}).on('render.handlebars', function() {
  $('#append-content').html("hello");
});