handler没有为JSON响应正确填充模板
handlebar not populating template correctly for JSON response
嗨,我正在对mvc控制器操作进行http get调用,该操作返回如下JSON:
[
{
"PlanCode": "P001 ",
"PlanName": "Plan1 "
},
{
"PlanCode": "P002$ ",
"PlanName": "Plan2$ "
},
{
"PlanCode": "P003$ ",
"PlanName": "Plan3$ "
},
{
"PlanCode": "P004$ ",
"PlanName": "Plan4$ "
},
{
"PlanCode": "P005$ ",
"PlanName": "Plan5$ "
},
{
"PlanCode": "P006$ ",
"PlanName": "Plan6$ "
},
{
"PlanCode": "P007$ ",
"PlanName": "Plan7$ "
},
{
"PlanCode": "P007$ ",
"PlanName": "Plan7$ "
},
{
"PlanCode": "P008$ ",
"PlanName": "Plan8$ "
},
{
"PlanCode": "P009$ ",
"PlanName": "Plan9$ "
}
]
使用手柄条形码如下:
var PLAN_METHOD = {
handlerData: function (planJSON) {
var templateSource = $("#plan-template").html();
template = Handlebars.compile(templateSource);
var context = planJSON;
plansHTML = template({planJSON:context});
$('#plans-div').html(plansHTML);
},
loadPlansData: function () {
$.get("http://localhost:41801/plan/getplans",null,this.handlerData)
}
};
$(document).ready(function () {
PLAN_METHOD.loadPlansData();
});
模板html如下:
<div id="plans-div" >
</div>
<script id="plan-template" type="text/x-handlebars-template">
<table >
<thead>
<tr>
<th>Plan Code</th>
<th>Plan Name</th>
</tr>
</thead>
<tbody>
{{#each Plans}}
<tr>
<td>{{this.PlanCode}}</td>
<td>{{this.PlanName}}</td>
</tr>
{{/each}}
</tbody>
</table>
</script>
不知怎的,手把javascript代码中的"plansHTML"没有填充JSON日期行。请帮助
您的模板正在数据的属性Plans
中查找一个数组。但是您的数据没有Plans
属性。解决方案只是在模板数据对象中使用正确的属性名称:
plansHTML = template({ Plans: context });
相关文章:
- handler没有为JSON响应正确填充模板
- 自动填充动态字段上的 ajax 响应
- 如何使用服务器的JSON响应动态填充dust模板
- Angular 2:用HTTP响应填充复选框列表
- 使用getJSON填充动画响应图像网格
- 如何在 Jquery 中填充 JSON 响应值
- 如何在 jQuery 中用 JSON 数据填充下拉列表作为 ajax 响应
- 如何从 Ajax 响应中重新填充 jquery UI 日期选择器
- 表单不是从带有角度的休息响应填充的
- jquery自动完成json响应没有填充文本框
- 响应性表在填充时会失去响应性
- 在数组中填充$http/rest请求未返回响应的日期
- 获取或填充自定义变量与谷歌地图方向的响应
- 用货币的json响应数据填充下拉列表
- 用后端JSON响应填充变量
- 尝试用Javascript填充字段,由PHP响应
- 将Backbone.js JSON响应填充到嵌套集合/模型中的嵌套集合中
- 使用php响应填充前端Ajax
- 如何用http响应填充作用域
- Microsoft translator api ajax回调是异步的,因此不会在其指定的文本框中填充响应