从模型中的列表填充数组

时间:2014-04-14 05:28:39

标签: javascript arrays asp.net-mvc-4 knockout.js

我有存储在数组中的JavaScript函数的数据。 现在为了使事情变得更容易,我想知道是否有一种方法可以从模型中的List填充数组

我在后端使用ASP.NET MVC框架。

我知道可能有某种方法,但我无法弄明白:(

1 个答案:

答案 0 :(得分:1)

是的,有一种方法:看看这个例子。我希望它会对你有所帮助: 您可以创建JavaScript文件或将其添加到您的视图中: 您创建了Point View Model pointsVM

var urlPath = window.location.pathname;

  $(function () {
      ko.applyBindings(pointsVM);
       pointsVM.loadPoints();
   });

var pointsVM= {
   Points: ko.observableArray([]),

   loadPoints: function () {
    var self = this;
    //Ajax Call Get All Points
    $.ajax({
        type: "GET",
        url: urlPath + '/FillIndex',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (data) {
            self.Articles(data); //Put the response in ObservableArray
        },
        error: function (err) {
            alert(err.status +" : " + err.statusText);
        }
        });

      }
   };

 function Points(Points) {
   this.field1= ko.observable(Points.field1);
   this.field2= ko.observable(Points.field2);
   this.field3= ko.observable(Points.field3);
   }

在你的控制器中:

  public JsonResult FillIndex()
    {
        return Json(db.YourDB.ToList(), JsonRequestBehavior.AllowGet);
    }

在您的视图中:只需调用javascript库。

希望它会有所帮助