Jquery 未从Ajax调用中调用WebMethod
我正在尝试执行下面的代码以实现自动完成,但是当我调试/执行代码时。我注意到它没有击中我的web方法 我的ASPX代码Jquery 未从Ajax调用中调用WebMethod,jquery,asp.net-ajax,Jquery,Asp.net Ajax,我正在尝试执行下面的代码以实现自动完成,但是当我调试/执行代码时。我注意到它没有击中我的web方法 我的ASPX代码 <script type="text/javascript" language="javascript"> $(document).ready(function () { SearchText(); }); function SearchText() { $('#<%=TextBox1.ClientID
<script type="text/javascript" language="javascript">
$(document).ready(function () {
SearchText();
});
function SearchText() {
$('#<%=TextBox1.ClientID %>').autocomplete({
source: function (request, response) {
var param = { searchStr: $('#TextBox1').val() };
$.ajax({
type: 'POST',
contentType: "application/json; charset=utf-8",
url: "WebForm1.aspx/GetCountry",
// data: "{searchStr:JSON.stringify('u')}",
data: "{searchStr: 'xx'}",
//data: JSON.stringify(param),
dataType: "json",
success: function (data) {
response(data.d);
},
error: function (msg, text) {
alert(msg);
}
});
}
});
}
</script>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
$(文档).ready(函数(){
SearchText();
});
函数SearchText(){
$('#')。自动完成({
来源:功能(请求、响应){
var param={searchStr:$('#TextBox1').val();
$.ajax({
键入:“POST”,
contentType:“应用程序/json;字符集=utf-8”,
url:“WebForm1.aspx/GetCountry”,
//数据:{searchStr:JSON.stringify('u')},
数据:“{searchStr:'xx'}”,
//数据:JSON.stringify(param),
数据类型:“json”,
成功:功能(数据){
答复(数据d);
},
错误:函数(消息,文本){
警报(msg);
}
});
}
});
}
C#代码背后的代码——简单地为测试目的硬编码值
[WebMethod(EnableSession = true)]
[ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
public static string[] GetCountry(string searchStr)
{
List<string> listCt = new List<string>();
listCt.Add("UnitedStates");
listCt.Add("UnitedKingdom");
listCt.Add("UnitedArab");
listCt.Add("UnitedNations");
return listCt.ToArray();
}
[WebMethod(EnableSession=true)]
[ScriptMethod(UseHttpGet=true,ResponseFormat=ResponseFormat.Json)]
公共静态字符串[]GetCountry(字符串searchStr)
{
List listCt=新列表();
添加列表(“美国”);
添加列表(“英国”);
添加列表(“UnitedArab”);
添加列表(“联合国”);
返回listCt.ToArray();
}
hmmm为什么要使用aspx页面?我过去已经做过类似的事情,但是使用.asmx文件,这两种方法都有可能,我尝试过两种方法;但是没有结果……试图找出错误……任何值得赞赏的帮助我想你不能在json字符串中以那种方式使用单引号“{searchStr:'xx'}”。好的,我想我知道问题出在哪里了。您使用$.ajax发布数据,但该方法只响应Get请求。Remove UseHttpGet=true。