我们如何使用Jquery和ASP.NET MVC 4复杂模型数据设置HTML元素的值
How do we set the value of an HTML element using Jquery and ASP.NET MVC 4 complex model data
在我的一个ASP.NET MVC 4视图中,我使用模型的数据来设置不同HTML元素的值。我可以在视图中使用此模型来显示值,例如:
<div>@Model.Category.Name</div> etc...
但是其中一个div标签<div id="DivTotalCost"></div>
需要显示所有类别中所有产品的总成本。因此,在视图的末尾,我有以下脚本代码来设置这个DivTotalCost标记的值。但是下面的代码并没有设置这个值。我已经放了一个警报语句来测试值,警报显示:
function(){
return total;
}
视图:
@model MyMVC_app.Models.ProductDetails
<div>@Model.Category.Name</div> etc...
<div id="DivTotalCost"></div>
@section scripts{
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/jqueryui")
<script type="text/javascript">
$(document).ready(function () {
var TotalCost = function () {
@if(Model.ProductCategoryList != null)
{
var total = "";
foreach(var item in Model.ProductCategoryList)
{
foreach(var product in @item.products)
{
total += product.price;
}
}
}
return total;
}
alert(TotalCost);
$('#DivTotalCost').text(TotalCost);
});
</script>
}
请帮忙。
谢谢。。Nam
第一个:警报显示
function(){
return total;
}
因为你传递的是函数本身,没有它的结果。您的警报(和div文本分配)应该使用函数结果,如以下
alert(TotalCost());
现在,在函数中,您混合了razor和javascript,两者都是不同的东西,并且在不同的时间运行,所以您应该像这样调整您的代码(没有经过测试,但您可能会明白)
$(document).ready(function () {
var TotalCost = function () {
@{
var total = 0;
if(Model.ProductCategoryList != null)
{
foreach(var item in Model.ProductCategoryList)
{
foreach(var product in @item.products)
{
total += product.price;
}
}
}
}//end of razor block
return @total;
}
});
您还可以创建一个ViewModel并在其上添加该逻辑,以防您尝试不同的方法
相关文章:
- 使用AngularJs时,如何在img标记具有src-attr时设置数据src
- angular.js我如何设置数据什么是响应值
- Highcharts如何显示在设置数据时加载动画
- Ajax请求返回模块设置数据
- 如何在Calendario中从JSON设置数据
- 控制器在设置数据之前获取出厂数据
- 为什么jQuery验证“;远程:“;验证需要一个函数来设置数据值
- 是否可以在CSS中为JS设置数据,以了解某些媒体查询正在应用
- 动态设置数据量属性的值
- 通过后端c#在javascript文件中设置数据
- Sencha Touch 创建无法在单击时销毁弹出窗口 Container.It 创建多个弹出窗口并创建设置数据值的错误
- 无法设置 CKEditor 值;设置数据失败
- 如何在Meteor上使用IronRouter在操作中设置数据
- 解析云 - 在从云返回数据之前设置数据的属性
- 在具有跨源的 iframe 中设置数据属性值
- Angular2:如何在输入元素上动态设置数据绑定变量
- 设置数据样式并使用javascript将其导出为XLS/CSV/PDF
- 关于在 Vue.js 中设置数据对象属性的最佳实践
- 为包定义的模板设置数据上下文
- 如何设置数据幻灯片到,就像我为每个.carousel-indicators li设置id一样