doTjs 使用doT.template(templ)(data)渲染后,无法再次渲染?

这是一个doT.js的问题,请看以下问题描述:

我的html是这样的


<button onclick="test()"></button>

<div id="showContent">

    <script id="js_templ" type="text/x-dot-template">

        <div>{{=it.testValue}}</div>

    </script>

</div>

js:


function test(){

    var tmpl = $("#js_templ").html();

    var strhmtl = doT.template(tmpl)({testValue:"测试数值"});

    $("#showContent").html(strhmtl);

}

第一次运行test()是正常的的,可以渲染,$("#js_templ").html()可以取到值,但是第二次点击test()按钮是就报错,错误是$("#js_templ").html()为undefined,这个值找不到了,我猜想的原因是在内存中这个 <script id="js_templ" type="text/x-dot-template"></script>节点已经在第一次运行时替换掉了,所以取不到值,但是我想做的事是每次点test()都能正常渲染,该怎么办!????


ABOUTYOU
浏览 572回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript