Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Ajax调用总是返回错误_C#_Jquery_Ajax - Fatal编程技术网

C# Ajax调用总是返回错误

C# Ajax调用总是返回错误,c#,jquery,ajax,C#,Jquery,Ajax,使用Jquery调用WebMethod时遇到问题 函数runQuery(e){ var search=$(e.val(); var-csKind; 如果($('#rbLP')。是(':checked')) csKind=1; 其他的 csKind=0; 变量参数={ url:'addEditProduct.ascx/AutoComplete_Press', 方法:“post”, contentType:'应用程序/json', 数据:JSON.stringify(搜索), 数据类型:“json”

使用Jquery调用WebMethod时遇到问题

函数runQuery(e){
var search=$(e.val();
var-csKind;
如果($('#rbLP')。是(':checked'))
csKind=1;
其他的
csKind=0;
变量参数={
url:'addEditProduct.ascx/AutoComplete_Press',
方法:“post”,
contentType:'应用程序/json',
数据:JSON.stringify(搜索),
数据类型:“json”,
成功:功能(数据){
警报(1);
},
错误:函数(数据){
警报(2);
}
};
$.ajax(params);
}
[WebMethod]
publicstaticvoidautocomplete\u按(字符串search子句,int-csKind)
{
int searchType=0;//БГ
正则表达式正则表达式=新正则表达式(“^[0-9]+$”;
如果(!regex.IsMatch(search子句))
searchType=1;
stringclients=laboratory.getClients2(searchType、search子句、csKind);
}

我如何诊断这个问题,我以前从未使用过ajax,现在我不知所措。

如果你问我,url似乎是错误的。在浏览器中打开您的控制台,查看它显示的内容,它将抛出“无法连接/连接被拒绝”错误。同时在浏览器中打开网络,您可以检查得到的http响应。这将帮助您开始诊断问题

我在这里看到的问题是你的传递参数:

data: JSON.stringify(search),
您缺少csKind,可能将此行更改为

data: "{searchClause: '" + search + "',csKind: '" + csKind + "'}",
并将您的方法更改为:

public static void AutoComplete_Press(string searchClause, string csKind)

您可以在发出请求后通过检查控制台来诊断错误。您还可以查看网络选项卡以查看状态代码和响应文本。更好的是,在VS的WebMethod中放置一个断点并逐步执行。这似乎不是一个有效的url:
addEditProduct.ascx/AutoComplete\u Press