C# 我如何解决这个问题;“未定义”;我的Jquery Ajax web服务调用存在问题
这是我的JS代码C# 我如何解决这个问题;“未定义”;我的Jquery Ajax web服务调用存在问题,c#,jquery,asp.net,ajax,web-services,C#,Jquery,Asp.net,Ajax,Web Services,这是我的JS代码 function testService(test) { var data = "{param2:\"" + test + "\"}"; $.ajax({ type: "POST", url: "WebService1.asmx/HelloWorld", dataType: "json", data: data, contentType: "application/json; charset=utf-8", success: fu
function testService(test) {
var data = "{param2:\"" + test + "\"}";
$.ajax({
type: "POST",
url: "WebService1.asmx/HelloWorld",
dataType: "json",
data: data,
contentType: "application/json; charset=utf-8",
success: function (response) {
alert(response.d);
},
error: function(response) {
alert(response.d);
}
});
}
还有我的网络方法
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
[System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string HelloWorld(string val)
{
Service1 service1 = new Service1();
Person person = service1.HelloWorld(val);
return person.name;
}
}
//
///WebService 1的摘要说明
///
[WebService(命名空间=”http://tempuri.org/")]
[WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
//要允许使用ASP.NET AJAX从脚本调用此Web服务,请取消注释以下行。
[System.Web.Script.Services.ScriptService]
公共类WebService 1:System.Web.Services.WebService
{
[网络方法]
[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
公共字符串HelloWorld(字符串val)
{
Service1 Service1=新Service1();
个人=服务1.HelloWorld(val);
返回person.name;
}
}
如果我尝试在没有参数的情况下调用web服务方法,这似乎很好,但一旦我尝试将数据作为参数传递到数据值中,我会得到“未定义的”c#中的参数名称必须与json对象键匹配
请查看javascript数据和helloworld方法参数,它们都需要使用相同的单词
var data={param2:test}代码>@ArunPJohny仍然未定义,您必须将(字符串val)更改为(字符串param2)@naathon是的,这似乎有效,谢谢,您可以将其放入答案中,以便我可以标记它(如果您愿意)。
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string HelloWorld(string param2)
{
Service1 service1 = new Service1();
Person person = service1.HelloWorld(val);
return person.name;
}
}
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string HelloWorld(string param2)
{
Service1 service1 = new Service1();
Person person = service1.HelloWorld(param2);
return person.name;
}
}