将数据从ajax成功数据传递到ejs模板

时间:2016-12-28 06:23:09

标签: javascript jquery ejs

我刚开始使用ejs。现在,我想将从ajax结果获取的数据传递给ejs中的两个不同的div。

我可以传递给一个div但是对于多个div,我需要在代码中进行哪些更改?

  $.ajax({
      type: "POST",
      url: serviceurl + 'Get',
      dataType: 'json',
      crossDomain: true,
      contentType: "application/json; charset=utf-8",
      data: JSON.stringify({  "imagesrc":  imagesrc }),
      success: function (data) {
           var  property = JSON.parse(data.GetResult);
           $('.insideContent>').remove() ;                              
           $('.insideContent').addClass("insidecontentcss") ;  

           var str = $("#insidecontenttooldata").html();
           var data = { tooldata: property };
           var content = new EJS({ text: str }).render(data);
           $(".insideContent").html(content);

           var str1 = $("#well").html();
           var data1 = { tooldata: property };
           var content1 = new EJS({ text: str1 }).render(data);
           $(".well").html(content);
      }

在ejs页面中我使用两个脚本,如

 <script id="insidecontenttooldata" type="text/x-ejs-template">
         //// loop////
</script>
 <script id="well" type="text/x-ejs-template">
      ///loop///
</script>

1 个答案:

答案 0 :(得分:2)

我猜您在定位第二个模板时遇到错误。修改代码如下:

 var str1 = $("#well").html(); //id of template is 'well' and not the 'welldata'
 var data1 = { tooldata: property };
 var content1 = new EJS({ text: str1 }).render(data1);
 $(".well").html(content1);
注意:正如@kristjan reinhold建议修改代码以使用相对变量。