You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET MVC中通过Ajax获取ViewModel数据为空的问题求助

问题排查与解决

嘿,我一眼就发现问题所在啦!你前端Ajax访问返回数据的方式不对,导致拿不到正确的CustomerNo值。

核心问题:属性路径不匹配

你后端返回的JSON结构是嵌套的:

{"OrdreDetailsSingleLines":{"OrdreNo":"111111","CustomerNo":"22222","Ordredate":"/Date(1525816800000)/"}}

可以看到CustomerNo是包裹在OrdreDetailsSingleLines对象里面的,但你前端的success函数里直接写了result.CustomerNo——这相当于去外层对象找CustomerNo,而外层根本没有这个属性,自然只能拿到空字符串。

修复方案

把Ajax的success函数代码改成这样:

success: function (result) {
    // 可选:先打印完整结果,方便后续调试
    console.log(result);
    // 正确访问嵌套的属性
    alert(result.OrdreDetailsSingleLines.CustomerNo);
}

额外调试小技巧

  • 以后遇到接口返回数据异常时,先通过console.log(result)在浏览器控制台查看完整的JSON结构,能快速定位属性路径这类问题。
  • 也可以确认下window.localStorage.getItem("pgm")拿到的OrdreNo值是否正确,避免因为参数错误导致后端返回空数据(不过你已经给出了正确的JSON输出,这一步当前可以忽略)。

内容的提问来源于stack exchange,提问作者7 seconds

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:18:04