为了账号安全,请及时绑定邮箱和手机立即绑定

mvc中前台遍历viewbag,循环的结果每一项用逗号隔开怎么实现

mvc中前台遍历viewbag,循环的结果每一项用逗号隔开怎么实现

BIG阳 2018-12-06 13:21:22
问题如题。 代码如下: data: [@foreach (var item in ViewBag.dataBuySum) { @(item.BuySum) }] 结果如下: data: [167167121215170182192142219156185158133190] 事实上想要的是类似于这个的结果:    //data: [49.9, 71.5, 106.4, 129.2, 144.0, // 176.0, 135.6, 148.5, 216.4, 194.1, // 95.6, 54.4, 49.9, 71.5, 106.4, // 129.2, 144.0, 176.0, 135.6, 148.5, // 216.4, 194.1, 95.6, 54.4, 54.4, // 216.4, 194.1, 95.6, 54.4, 54.4, // 54.4 //]   数据来源是我从数据库查询出的某个集合,取某列int值,挂到data上~~,就是这里不知道怎么加一个逗号了。  
查看完整描述

33 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

@吴瑞祥: 大神,对的,我就是那个弱类型转换不过来.....我再试试你的这种方法

查看完整回答
反对 回复 2018-12-24
?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

@Sakura丶紫嫣: 注意下你的类型,你要保证你的dataBuySum是List<int>类型的,要不然会转换错误。。

查看完整回答
反对 回复 2018-12-24
?
侃侃无极

TA贡献2051条经验 获得超10个赞

@幻天芒: 

值不能为null

查看完整回答
反对 回复 2018-12-24
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

@Sakura丶紫嫣: 你注意看我的代码,和你的代码有啥区别?不需要foreach这些。你可以完全按照我的代码来书写试试,仅仅需要将ViewBag.Xx替换成ViewBag.dataBuySum2。

查看完整回答
反对 回复 2018-12-24
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

var da = [
@foreach (var item in ViewBag.dataBuySum1)
{
var tmpStr = item + ",";
@item.BuySum
}
];

是指的这样吗,测试不通过,tmpStr是每一项加逗号,但是@tmpStr和tmpStr有关系麽...

我把@item.BuySum改成@tmpStr编译通不过的

查看完整回答
反对 回复 2018-12-24
?
千巷猫影

TA贡献1829条经验 获得超7个赞

var tempData = new List<int> {1, 2, 3, 4, 5, 6, 7};//这个后台数据

var data = [@foreach (var item in tempData)
{
var tmpStr = item + ",";
@tmpStr
}];
console.log(data);

亲测通过

查看完整回答
反对 回复 2018-12-24
?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

不能加html,详细见上文

查看完整回答
反对 回复 2018-12-24
?
弑天下

TA贡献1818条经验 获得超8个赞

已看到.......

查看完整回答
反对 回复 2018-12-24
?
翻阅古今

TA贡献1780条经验 获得超5个赞

......露个脸

查看完整回答
反对 回复 2018-12-24
?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

@吴瑞祥: 嗯,F12看了看string的属性,大小写错了(是Join),现在调试代码,能用这个东西,但是仍黄页,不说了都是泪

查看完整回答
反对 回复 2018-12-24
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

@Sakura丶紫嫣: 你知道我想说什么的。。。。。。对吧

查看完整回答
反对 回复 2018-12-24
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

@吴瑞祥: 后台编译不通过

查看完整回答
反对 回复 2018-12-24
?
慕斯王

TA贡献1864条经验 获得超2个赞

@稳稳的河: 嗯,是的,问的是@语法,不过这样没弄出来,我去后台按他给我方法试试

查看完整回答
反对 回复 2018-12-24
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

你看看这个可以吗

 

代码:

 1 @{
 2     List<int> list = new List<int>() { 123, 111, 222, 1324, 242, 1425, 1345 };
 3     var str = "";
 4     if (list != null && list.Count > 0)
 5     {
 6         foreach (var item in list)
 7         {
 8             str += @item + ",";
 9         };
10         str = str.Substring(0, str.Length - 1);
11     }
12     str = string.Concat('[', str, ']');
13 }
14 @str
查看完整回答
反对 回复 2018-12-24
?
收到一只叮咚

TA贡献1821条经验 获得超4个赞

他应该问的是@的语法

查看完整回答
反对 回复 2018-12-24
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

需求是这样的,我从数据库里面查询出一张表,取A列(int类型的),如题需要一个int数组,后台处理有点复杂就试了试这种偏方法,没试出来,上面两个答案仔细一想是会多一个逗号。用的是mvc,return的是list泛型,想取一个一个的int值,转换类型转不了

查看完整回答
反对 回复 2018-12-24
?
千万里不及你

TA贡献1784条经验 获得超9个赞

这种情况你直接在代码里string.join一下不好吗?直接输出一个字符串到页面上了

上面的两个答案都会有前后多出一个逗号的问题

查看完整回答
反对 回复 2018-12-24
?
DIEA

TA贡献1820条经验 获得超2个赞

@Sakura丶紫嫣: 

 

 

不好意思,忘了 你说不能用 html,现在这个 通过而了。

查看完整回答
反对 回复 2018-12-24
?
精慕HU

TA贡献1845条经验 获得超8个赞

@Sakura丶紫嫣: 你取的是 int 的值,怎么会有小数点呢?

查看完整回答
反对 回复 2018-12-24
?
桃花长相依

TA贡献1860条经验 获得超8个赞

行不通,我试了的

查看完整回答
反对 回复 2018-12-24
首页上一页12下一页尾页
  • 33 回答
  • 0 关注
  • 1889 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信