博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVC后台数据赋值给前端JS对象
阅读量:4649 次
发布时间:2019-06-09

本文共 1324 字,大约阅读时间需要 4 分钟。

方式一:

reportInfo是后台Controller传到前台的一个对象,其中包含多个属性

js中使用:

 

方式二:

Controller中的数据,不管是使用的是ViewModel 还是ViewBag.Data,要将他传递到View中,这个很容易,但是如果要将它传递给JS中的某个对象,这个改如何处理呢?

后台的数据格式:

1
2
3
4
5
6
7
8
public 
class 
ViewModel
{
    
public 
int 
ID { 
get
set
; }
 
    
public 
string 
Name { 
get
set
; }
 
    
public 
List<
string
> Data { 
get
set
; }
}

Controller 传递到View的数据:

1
2
3
4
5
6
7
8
9
10
11
12
public 
ActionResult Index()
{
    
ViewBag.ID = 1;
    
ViewBag.Name = 
"WWW"
;
    
ViewModel viewModel = 
new 
ViewModel()
    
{
        
ID = 100,
        
Name = 
"WWW"
,
        
Data = 
new 
List<
string
> {
"A"
,
"B"
,
"C"
,
"D"
,
"E" 
}
    
};
    
return 
View(viewModel);
} 

前台JS 中的一个对象

1
2
3
4
5
var 
viewModel = {
    
id: 0,
    
name: 
''
,
    
data:[]
}

  

1. 如果需要传递整形数字到JS中 

1
2
3
4
5
<script>
        
viewModel.id=@ViewBag.ID;
        
or
        
viewModel.id=@Model.ID;
</script>

2.  如果需要传递字符串到JS中

1
2
3
4
5
<script>       
        
viewModel.name=
'@ViewBag.Name'
;
        
or
        
viewModel.name=
'@Model.Name'
</script> 

3.如果需要传递复杂的数据类型到JS中,如对象,数组,集合等,

1
2
3
<script>
        
viewModel.data = @Html.Raw(Json.Encode(Model.Data));
</script>

 

更多方法请参见:http://stackoverflow.com/questions/3850958/pass-array-from-mvc-to-javascript

另外将JS 中的对象传递到Controller中,这个直接采用Ajax,就可以实现,详细请参见  http://stackoverflow.com/questions/16824773/passing-an-array-of-javascript-classes-to-a-mvc-controller

其中方式二转载至:http://www.cnblogs.com/akwwl/p/5238975.html

转载于:https://www.cnblogs.com/LonelyCode/p/6347154.html

你可能感兴趣的文章
引入css的四种方式
查看>>
iOS开发UI篇—transframe属性(形变)
查看>>
3月7日 ArrayList集合
查看>>
jsp 环境配置记录
查看>>
Python03
查看>>
LOJ 2537 「PKUWC2018」Minimax
查看>>
使用java中replaceAll方法替换字符串中的反斜杠
查看>>
Some configure
查看>>
流量调整和限流技术 【转载】
查看>>
1 线性空间
查看>>
VS不显示最近打开的项目
查看>>
DP(动态规划)
查看>>
chkconfig
查看>>
2.抽取代码(BaseActivity)
查看>>
夏天过去了, 姥爷推荐几套来自smashingmagzine的超棒秋天主题壁纸
查看>>
反射的所有api
查看>>
css 定位及遮罩层小技巧
查看>>
[2017.02.23] Java8 函数式编程
查看>>
sprintf 和strcpy 的差别
查看>>
JS中window.event事件使用详解
查看>>