在脚本模板中运行javascript / jquery(脚本标记中的脚本)

时间:2016-12-13 18:35:03

标签: javascript jquery html knockout.js tags

我有一个客户端CMS div加载到脚本模板中。我需要在div中运行一个脚本。如何在此脚本标记内运行myFunction?它提前关闭了第一个脚本标签:(

 <script type="text/html" id="tmpl-foo">

 <div id="myCMSdiv">

 <p> My Content </p>

 <script>
 myFunction();
 </script>

 </div>

 </script>

1 个答案:

答案 0 :(得分:0)

给出一些关于CMS如何绑定模板(JS文件)的上下文 如果您的CMS使用template绑定,则可以使用afterRender

就像这样:

var viewModel = function() {
  this.myFunction = function() {
    console.log("test");
  }
}

ko.applyBindings(new viewModel());
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>

<div data-bind="template: { name: 'tmpl-foo', afterRender: myFunction }"></div>

<script type="text/html" id="tmpl-foo">

  <div id="myCMSdiv">
    <p>My Content</p>
  </div>

</script>

有关template绑定here的更多信息。

如果您的CMS将其用作component,那么您需要另一种方法 检查这个post如何做,但要点与上面的相同。