【问题标题】:How to pass Array in controller to JS in cshtml - MVC如何将控制器中的数组传递给cshtml中的JS - MVC
【发布时间】:2020-07-13 06:16:56
【问题描述】:

我是开发 .Net MVC 5 应用程序的初学者。但是我在将数组从控制器传递给cshtml中的JS时遇到了一些问题,但我不知道该怎么做,有人告诉我吗?enter image description here

enter image description here

JS:

var areaChartData = {
  labels: ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'],
  datasets: [{
          label: 'Çıkan Ürün',
          backgroundColor: 'rgba(210, 214, 222, 1)',
          borderColor: 'rgba(210, 214, 222, 1)',
          pointRadius: false,
          pointColor: 'rgba(210, 214, 222, 1)',
          pointStrokeColor: '#c1c7d1',
          pointHighlightFill: '#fff',
          pointHighlightStroke: 'rgba(220,220,220,1)',
          data: [10,10,20,22,23,24,25,26,27,20,10,111]
      }]
}

控制器:

public ActionResult Index() {

    double[] giren = new double[11];
    return View();
}

如何在 JS 中发布发送到“数据”的数组?

【问题讨论】:

    标签: javascript asp.net-mvc model-view-controller razor


    【解决方案1】:

    您不能在cshtml 部分直接将值从Controller 传递给JS。先绑定cshtml,然后获取DOM中的元素,这样DOM就会加载来自控制器的cshtml元素中的值。

    然后您可以访问从cshtml 元素到JS 的值。这就是循环。

    您可以参考下面的文章。 https://www.pluralsight.com/guides/asp-net-mvc-using-javascript-with-ajax-and-razor-partial-views

    【讨论】:

      【解决方案2】:

      我找到了解决办法:

      控制器:

      using Newtonsoft.Json;
      public ActionResult Index()
          {
             double[] value= new double[13];
             ViewBag.DataPoints1 = JsonConvert.SerializeObject(value);
             return view();
          }
      

      JS

       datasets: [
                  {
                      label: 'Name',
                      backgroundColor: 'rgba(210, 214, 222, 1)',
                      borderColor: 'rgba(210, 214, 222, 1)',
                      pointRadius: false,
                      pointColor: 'rgba(210, 214, 222, 1)',
                      pointStrokeColor: '#c1c7d1',
                      pointHighlightFill: '#fff',
                      pointHighlightStroke: 'rgba(220,220,220,1)',
                      data: @Html.Raw(ViewBag.DataPoints1)
                  },
      

      “数据”可以从控制器调用值作为 ViewBag

      【讨论】:

        猜你喜欢
        • 2020-01-26
        • 1970-01-01
        • 2018-03-31
        • 1970-01-01
        • 2013-09-05
        • 2019-01-06
        • 2022-10-31
        • 2017-03-24
        相关资源
        最近更新 更多