今天做项目的时候用到了laytpl模板引擎,代码如下:

     

/**

 * form提交成功回调函数

 */

 querySuc = function(data){

common.btnDisable(false);

if(data.result){

var pebaseInfo = data.value.baseInfo;

var gettpl = $("#basicinfo").html();

var tpl = laytpl(gettpl);

tpl.render(pebaseInfo,function(elem){

   $("#pebase").html(elem);

});

}else{

common.alert(data.message,8);

}

};

</script>

<script id="basicinfo" type="text/html">

<table class="table table-bordered">

       <tbody>

           <tr>

               <td width="8%">学    历</td>

               <td width="12%">`pebaseInfo`.`education`</td>

               <td width="8%">证 件 号</td>

               <td colspan="5" width="52%">`pebaseInfo`.`idCard`</td>

               <td width="8%">档 案 号</td>

               <td width="12%">`pebaseInfo`.`myarchivesId`</td>

           </tr>

           <tr>

               <td width="8%">职    业</td>

               <td width="12%">`pebaseInfo`.`job`</td>

               <td width="8%">姓    名</td>

               <td width="16%">`pebaseInfo`.`name`</td>

               <td width="8%">性    别</td>

               <td width="10%">`pebaseInfo`.`sex`</td>

               <td width="8%">年    龄</td>

               <td width="10%">`pebaseInfo`.`age`岁</td>

               <td width="8%">电话</td>

               <td width="12%">`pebaseInfo`.`phone`</td>

           </tr>

       </tbody>

</table>

</script>



<body>

   <div id="pebase"></div>

</body>


   运行的时候总是提示  Laytpl Error:ReferenceError: pebaseInfo is not defined  这个错误,后来发现将  “var pebaseInfo = data.value.baseInfo;” 话中的var 去掉就没有问题了,也就是说传入的对象必须是全局变量。