使用jquery ajax调用c# web方法,省略可选参数
本文关键字:参数 方法 ajax jquery 调用 web 使用 | 更新日期: 2023-09-27 18:05:15
我有一个这样的webmethod:
[WebMethod(EnableSession = true)]
public string testMethod(string param1, string param2="default value")
{
.......
}
我试图调用这个方法使用jquery省略可选参数,和webmethod不被击中。
$.ajax({
type: "POST",
url: url,
data: { "param1": "value1" }
}).complete(function (data) {....});
I只有在传递第二个参数时才有效。有什么办法可以解决这个问题吗?
我不认为你可以在webservice方法中使用可选参数,你可能需要重载这个方法…
[WebMethod(EnableSession = true, MessageName = "testMethod"))]
public string testMethod(string param1, string param2)
{
.......
}
[WebMethod(EnableSession = true, MessageName = "testMethod")]
public string testMethod(string param1)
{
testMethod(param1, "default value");
}
编辑:文章链接。
这里还有一篇关于其他方法的文章值得一读,虽然它的结论是不使用重载,但我想这是你的决定。