2016-09-05 81 views
0

我有这个疑问在控制器:
如何将控制器中的列表传递给asp.net mvc中的javascript函数?

DataClasses1DataContext behzad = new DataClasses1DataContext(); 
      var query = (from p in behzad.ImagePaths 
         select new 
         { 
          p.name 
         }).ToList(); 
      ViewBag.movies = query; 


      return View(); 


谱写视图这个Java脚本代码:

function behi() { 
     @{ 
      var behzad = ViewBag.movies; 
     } 

     alert('@(behzad)'); 


    } 


该Java脚本代码,告诉我这一点:
enter image description here
我该如何编写show controller查询资源的java脚本代码超赞?谢谢大家。

+0

'var behzad = @ Html.Raw(Json.Encode(ViewBag.movi​​es)); alert(behzad);'(不包裹在@ {...}') –

回答

1

序列化它。下面的代码使用Newtonsoft的Json序列化器来做到这一点。

var movies = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.movies)); 

现在movies变量将是物品的阵列,每一个name属性。

0

将对象返回到json,如下所示,并在javascript中使用它。 JavaScriptSerializer类位于System.Web.Script.Serialization包中。 希望这有助于。

DataClasses1DataContext behzad = new DataClasses1DataContext(); 
      var query = (from p in behzad.ImagePaths 
         select new 
         { 
          p.name 
         }).ToList(); 
      ViewBag.movies = new JavaScriptSerializer().Serialize(query); 
      return View(); 
+0

这是工作,但Java脚本警报告诉我这个:[{012B名称":" http://s2.picofile.com/file /7783181933/Demo_Rehlat_Imam_Khomeini.jpg "},{" name ":" http://farsi.rouhollah.ir/image/imam.jpg "}]这是“ –

相关问题