【问题标题】:AngularJS + ASP.NET MVC call controller actionAngularJS + ASP.NET MVC 调用控制器动作
【发布时间】:2017-01-08 02:16:50
【问题描述】:

在使用 AngularJS 之前,我使用此代码获取函数的 JSON 结果

$.ajax({
        url: '@Url.Action("getGamedata", "Home")',
        type: 'GET',
        dataType: 'json',
        cache: false,
        async: false,
        success: function (gameInfo) {
            //alert(gameInfo.Name); //Working OK
            for(var i=0;i<6;i++)
                createTable(gameInfo[i]);
        }
    });

JSON 结果包含 6 个项目,包括名称、流派、imageUrl 等。现在我正在使用 AngularJS,并且具有构建动态网格的功能

function buildGridModel(tileTmpl) {
          var it, results = [];

          for (var j = 0; j < 6; j++) {

              it = angular.extend({}, tileTmpl);
              it.icon = it.icon + (j + 1);
              it.title = it.title + (j + 1);
              it.span = { row: 1, col: 1 };

              switch (j + 1) {
                  case 1:
                      it.background = "red";
                      break;

                  case 2: it.background = "green"; break;
                  case 3: it.background = "darkBlue"; break;
                  case 4:
                      it.background = "blue";
                      break;

                  case 5:
                      it.background = "yellow";
                      break;

                  case 6: it.background = "pink"; break;
              }

              results.push(it);
          }

          return results;
      }

我想将每个项目标题推送到我的网格图块标题。

  1. 第一个磁贴标题 = 第一个 JSON 项目标题
  2. 第二个磁贴标题 = 第二个 JSON 项目标题
  3. 等等

【问题讨论】:

  • 你能发布你迄今为止尝试过的代码吗?

标签: javascript angularjs json ajax asp.net-mvc


【解决方案1】:

我的解决方案: 将ajax放入函数中

function buildGridModel(tileTmpl) {
          var it, results = [];
          $.ajax({
              url: '/home/getGamedata',
              type: 'GET',
              dataType: 'json',
              cache: false,
              async: false,
              success: function (gameInfo) {

                  for (var j = 0; j < 6; j++) {

                      it = angular.extend({}, tileTmpl);
                      it.icon = it.icon + (j + 1);
                      it.title = gameInfo[j]["Name"];
                      it.span = { row: 1, col: 1 };

                      switch (j + 1) {
                          case 1:
                              it.background = "red";
                              break;

                          case 2: it.background = "green"; break;
                          case 3: it.background = "darkBlue"; break;
                          case 4:
                              it.background = "blue";
                              break;

                          case 5:
                              it.background = "yellow";
                              break;

                          case 6: it.background = "pink"; break;
                          case 7: it.background = "darkBlue"; break;
                          case 8: it.background = "purple"; break;
                          case 9: it.background = "deepBlue"; break;
                          case 10: it.background = "lightPurple"; break;
                          case 11: it.background = "yellow"; break;
                      }

                      results.push(it);
                  }
              }
          });

          return results;
      }

【讨论】:

猜你喜欢
  • 2018-06-18
  • 1970-01-01
  • 2020-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-22
  • 2010-10-10
  • 1970-01-01
相关资源
最近更新 更多