【问题标题】:Reading responseJson from MVC Controller从 MVC 控制器读取 responseJson
【发布时间】:2018-10-04 16:24:46
【问题描述】:

我有一个返回 Json 结果的 MVC 控制器:

return Json(elements);

元素是一个列表

这是从 ajax 调用返回的,我正在处理 OnComplete 调用中的结果。

在那个调用中,我拥有了我需要的一切,我可以查看结果并查看 responseJson 中的字符串数组,但我无法弄清楚获取数组的语法。

function OverviewElementRemove_Complete(result) {
    $.each(result.responseJson, function (i, e) {
        //do some stuff?
    });
}

再次声明,我可以在调试器中看到我想要的结果,我只是不知道通过 responseJson 循环的语法。

我知道有很多类似的问题,但没有一个涵盖这种情况。

【问题讨论】:

  • 缺少很多信息供人们回答这个问题。元素是什么类型?生成的 JSON 是什么样的?
  • 你可以使用 result.elements[0] 吗?
  • @ErikPhilips 抱歉,我最初的帖子有问题,应该指出 List
  • @RossBush 至少在这一点上似乎是未定义的

标签: jquery json ajax asp.net-mvc


【解决方案1】:

我可能遗漏了一些东西,但你的 JS 函数中的 result 不是字符串列表吗?即

result === ['string1', 'string2', 'etc.']

这就是我在运行基本测试时似乎得到的结果:

return Json(new List<string>{"string1", "string2"});

所以要遍历每个项目,您的代码应该是:

function OverviewElementRemove_Complete(result) {
    $.each(result, function (i, e) {
        //do some stuff?
    });
}

【讨论】:

    【解决方案2】:

    对于那些没有或无法阅读我的原始答案的人来说,这里又来了。

    引用“responseJson”(注意大小写)而不是“responseJSON”(再次注意大小写)是问题所在。

    一旦我更改了对“responseJSON”的引用(再次,再次注意大小写),它就起作用了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-06
      相关资源
      最近更新 更多