asp.net - 具有来自 ASP.NET 的多个返回值的 JQuery Ajax

标签 asp.net jquery ajax webmethod

如何在成功函数中从 JQuery.Ajax() 返回多个值?

我试过了:

          $.ajax({
                type: "POST",
                url: "default.aspx/myFunction",
                data: "{}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function(msg) {
                    $("#myDiv").html(msg.a[0]);
                    $("#myDiv2").html(msg.a[1]);
                }
            });

这是我的 ASP.NET 页面:

<WebMethod()> _
Public Shared Function myFunction() As Array

     Dim a() As String
     a(0) = "value 1"
     a(1) = "value 2"

     Return a

End Function

它仅适用于唯一的返回字符串,但数组不起作用:(

最佳答案

将其更改为msg.d[0]

写入 msg.a 是完全错误的;该方法的返回值与变量名无关。

但是,出于安全原因,ASP.Net 将 JSON 对象包装在 d 属性中,因此您需要编写 msg.d 来访问该数组。

关于asp.net - 具有来自 ASP.NET 的多个返回值的 JQuery Ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3926384/

相关文章:

javascript - ajax jquery - 函数中的 2 次插入

jquery - 下拉列表依赖形式

c# - ASP.Net 开发服务器死锁

asp.net - 什么可能导致 Azure 角色内缓存进程线性内存增长?

javascript - Django/Ajax 不刷新

javascript - 使用 jQuery 动态显示多个内容

javascript - Codeigniter JQuery ajax 发布空值

c# - 如何上传文件而不将其发回asp.net?

c# - Azure .NET MVC 核心应用程序 : User not being redirected upon form submission

javascript - 使用 Greasemonkey 将类添加到 iframe 的主体