【问题标题】:call webservice funtion that has params type input by js通过js调用具有参数类型输入的webservice函数
【发布时间】:2017-12-24 05:44:46
【问题描述】:

我有这样的 c#.net 网络服务

[WebMethod]
public string GetReportResult(int ReportID,params object[] Parameters)
{
    return "hello";
}
[WebMethod]
public string Hello(string hello)
{
    return hello;
}

对于 hello 函数,我可以调用函数,但 GetReportResult 我不能 我的 jquery ajax 是这个

        var webMethod = "ws.asmx/Hello";
        var parameters = "{'ReportID':10,}";
        $.ajax({

            type: "POST",
            url: "ws.asmx/GetReportResult",
            dataType: 'json',
            contentType: 'application/json; charset=utf-8',

            data: parameters,
            success: function (msg) {
                alert(msg.d);
            },
            error: function (jqXHR, textStatus, errorThrown) {
                alert(errorThrown);
            }
        });
    });

我想通过 jquery 调用这个 Web 服务,但我不知道如何将数据发送到 params 值 大家可以帮帮我吗?

【问题讨论】:

  • 只需发送一个数组,“params”只是在您从代码中调用它时启用 params 参数语法 - 它仍然是一个简单的数组。出现的第一个问题:为什么要声明一个带有参数的 WebMethod?
  • @YeldarKurmangaliyev,你能解释一下吗?

标签: javascript c# jquery web-services


【解决方案1】:

我使用 jQuery 中的数组发送了输入。这是代码的工作示例

$(document).ready(function() {
  var cars = ["Saab", "Volvo", "BMW"];
  var webMethod = "ws.asmx/Hello";
  var parameters = "{'ReportID':10,'Parameters':['Name1','Name2']}";
  $.ajax({

    type: "POST",
    url: "ws.asmx/GetReportResult",
    dataType: 'json',
    contentType: 'application/json; charset=utf-8',

    data: parameters,
    success: function(msg) {
      alert(msg.d);
    },
    error: function(jqXHR, textStatus, errorThrown) {
      alert(errorThrown);
    }
  });
});

【讨论】:

  • @mpf82 谢谢我的朋友,我通过这种方式解决了我的问题,等待系统让我检查我的答案
猜你喜欢
  • 2015-04-10
  • 2016-01-25
  • 2020-01-24
  • 2017-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-13
  • 1970-01-01
相关资源
最近更新 更多