Jquery 为每个JSON值更新HTML值
我试图通过从控制器操作获取JSON来更新视图中div的每个值。 我目前可以针对每个div,但我不知道如何读取每个JSON值 这是我的部门:Jquery 为每个JSON值更新HTML值,jquery,json,ajax,asp.net-mvc,Jquery,Json,Ajax,Asp.net Mvc,我试图通过从控制器操作获取JSON来更新视图中div的每个值。 我目前可以针对每个div,但我不知道如何读取每个JSON值 这是我的部门: <div class="progress" style="background: white" value="@item.CompletionRate" data-acr="@item.Acronym"></div> 条件应类似于: var acr= $(this).attr('acr'); //referring to
<div class="progress" style="background: white" value="@item.CompletionRate"
data-acr="@item.Acronym"></div>
条件应类似于:
var acr= $(this).attr('acr'); //referring to .progress data-acr field
each(result){
if(result.Acronym == acr){
$(this).data('value', result.CompletitionRate)
}
JSON如下所示:
[{"Name":"Raw To Common","Acronym":"RTC","Status":"Running","CompletionRate":11,"Started":"\/Date(1513220400000)\/","Ended":null},{"Name":"ePack","Acronym":"EPK","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Long Constrained","Acronym":"FLC","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Raw Material Long Term Constrained","Acronym":"RLC","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Long Term Unconstrained","Acronym":"FLU","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Short Term Constrained","Acronym":"FSC","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Short Term Unconstrained","Acronym":"FSU","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Raw Materials Long Term Unconstrained","Acronym":"RLU","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Long Term Fixed Supply","Acronym":"FLF","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null}]
public JsonResult ModelsUpdate()
{
DateTime minDate = DateTime.Today;
DayOfWeek todayDay = DateTime.Today.DayOfWeek;
DateTime resultminDate = new DateTime();
resultminDate = CalculateminDate(minDate,todayDay);
var viewModel = CacheHelper.Current.Get(resultminDate);
return Json(viewModel, JsonRequestBehavior.AllowGet);
}
我的控制器如下所示:
[{"Name":"Raw To Common","Acronym":"RTC","Status":"Running","CompletionRate":11,"Started":"\/Date(1513220400000)\/","Ended":null},{"Name":"ePack","Acronym":"EPK","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Long Constrained","Acronym":"FLC","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Raw Material Long Term Constrained","Acronym":"RLC","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Long Term Unconstrained","Acronym":"FLU","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Short Term Constrained","Acronym":"FSC","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Short Term Unconstrained","Acronym":"FSU","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Raw Materials Long Term Unconstrained","Acronym":"RLU","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null},{"Name":"Finished Goods Long Term Fixed Supply","Acronym":"FLF","Status":"Not Started","CompletionRate":0,"Started":null,"Ended":null}]
public JsonResult ModelsUpdate()
{
DateTime minDate = DateTime.Today;
DayOfWeek todayDay = DateTime.Today.DayOfWeek;
DateTime resultminDate = new DateTime();
resultminDate = CalculateminDate(minDate,todayDay);
var viewModel = CacheHelper.Current.Get(resultminDate);
return Json(viewModel, JsonRequestBehavior.AllowGet);
}
有人能帮我吗?
var结果=[{
“名称”:“从原始到普通”,
“首字母缩写”:“RTC”,
“状态”:“正在运行”,
“完成率”:11,
“开始”:“\/日期(1513220400000)\/”,
“结束”:空
},
{
“名称”:“ePack”,
“首字母缩略词”:“EPK”,
“状态”:“未启动”,
“完成率”:0,
“已启动”:空,
“结束”:空
},
{
“名称”:“产成品长期约束”,
“首字母缩略词”:“FLC”,
“状态”:“未启动”,
“完成率”:0,
“已启动”:空,
“结束”:空
}
]
$(“.progress”)。每个(功能(元素){
var acr=$(this.data('acr');
var item=result.find(item=>item.Acronym==acr);
如果(项目){
$(this.attr(“value”,item.CompletionRate);
$(this.text)(item.Acronym+'-'+item.Status);
}否则{
控制台日志(acr,“未找到”);
}
});代码>
。进度{
显示:内联块;
宽度:50px;
高度:50px;
边框:1px纯黑;
填充:10px;
}
这取决于您从服务器返回的json,您可以共享您的服务器端代码吗?需要查看json并告诉我们您想要从中获取哪些字段。我猜您可能需要一个循环,但如果不查看数据结构,就无法确定。@ADyson ready伙计们,我已经更新了问题。@derloopkat完成。我将尝试使用这种方法,但仍然需要将其插入HTML值,怎么做?@Marcelo insert HTML value-where?在控制台上未定义。在问题所在的div中,您可以看到它有一个value属性。@Marcelo,您的HTML中只有一个div。您的意思是为每个值创建一个div吗?