2014-10-08 72 views
0

我有我在我的控制器添加一个字符串..通过ViewBag asp.net的MVC发送文本

ViewBag.mydata = "a,x,b,\na,y,b,....." 

在我在我调用JavaScript代码视图..

var myvar= @ViewBag.mydata; 

当我看到查看源代码的html我发现

var myvar = a,x,b, 
      a,y,b, 
      ....... 

我需要MYVAR是我在ViewBag发送的字符串..

感谢

+1

很好,\ n将这样做到一个字符串:-) – Dani 2014-10-08 14:14:34

回答

2

尝试

var myvar= '@ViewBag.mydata'; 

看来你具有因为@ViewBag.mydata您outputing只是你的C#字符串的内容,以它作为你需要来包装成引号JavaScript字符串。

更新1

如果你wan't,让您的\n的显示,你需要逃避\并可以通过复制该标志来实现:

var myvar= '@ViewBag.mydata'.replace('\n', '\\n'); 
+0

没有帮助..它在前面和结尾添加一个报价,但/ n被转换为新行 – Arnab 2014-10-08 14:20:20

+0

@Arnab从你的问题,它似乎应该是一个答案。你能更好地描述你想让你成功吗?我认为你想在用户界面上显示** \ n **,对吗?你如何使用你的** myvar **? – Vladimirs 2014-10-08 14:27:49

+0

我的'var myvar'代码是在js中的,所以替换没有帮助,但是对于提供'\\ n'的thanx,我能够通过从\\ n而不是\ n发送来自控制器的数据来解决问题而且做到了.. – Arnab 2014-10-08 16:39:44