Javascript Web服务C#返回未定义的值
我尝试了一个简单的web服务(只是测试JavaScript代码中是否会填充该值)。我尝试了一个非常简单的代码片段,但它返回“undefined”。请告知。我尝试了一些解决办法,但没有成功 下面是关于asmx文件的简单代码Javascript Web服务C#返回未定义的值,javascript,c#,ajax,Javascript,C#,Ajax,我尝试了一个简单的web服务(只是测试JavaScript代码中是否会填充该值)。我尝试了一个非常简单的代码片段,但它返回“undefined”。请告知。我尝试了一些解决办法,但没有成功 下面是关于asmx文件的简单代码 [WebMethod] public string HelloWorld(string param1, string param2) { return "Hello World" + param1 + ":" + param2; } 下面是我的javascript上的代
[WebMethod]
public string HelloWorld(string param1, string param2)
{
return "Hello World" + param1 + ":" + param2;
}
下面是我的javascript上的代码
$.ajax({
url: "SimpleService.asmx/HelloWorld",
type: "POST",
data: {
'param1': 'value1',
'param2': 'value2'
},
success: function(response) {
alert(response.d);
}
});
我尝试使用response.text和response.value获得结果,但仍然得到一个未定义的值
success: function(response) {
alert(response.text);
alert(response.value);
}
在我的asmx文件中,
我还尝试将[WebMethod]替换为
[WebMethod(EnableSession = true)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string HelloWorld(string param1, string param2)
{
return "Hello World" + param1 + ":" + param2;
}
请告知从我的web服务获取结果的正确格式
谢谢您应该将
[ScriptService]
属性添加到您的服务类中,如下所示
[ScriptService]
public class SimpleService : System.Web.Services.WebService
之后,更改ajax调用。按如下方式放置contentType和更改数据:
$.ajax({
url: "SimpleService.asmx/HelloWorld",
type: "POST",
contentType: "application/json; charset=utf-8",
data: "{ param1: 'value1', param2: 'value2' }",
success: function (response) {
alert(response.d);
}
});
这是一个相关的问题,可能还有许多其他问题与您的问题类似,并且已经得到了回答。