我有一个 ASP.NET Webforms 应用程序,并尝试在文本框上实现 jQuery 自动编译。正在调用服务器代码,但没有显示任何内容。我已经替换了对 Web 服务的调用并添加了一些静态文本,并且显示正常。谁能看出问题出在哪里吗?
服务器端代码在这里:
[WebMethod]
public string[] ReturnPostcodes(string term)
{
PostcodeService postcodes = new PostcodeService();
var results = postcodes.ReturnPostcodes().Where(p => p.Postcode.StartsWith(term.ToUpper())).Select(p => p.Postcode).Take(20).ToArray();
return results;
}
HTML 在这里:
<tr>
<td>Mobile Telephone:</td>
<td><asp:TextBox runat="server" ID="txtPostcode"></asp:TextBox></td>
</tr>
jquery 在这里:
$(document).ready(function () {
$('#ctl00_ctl00_mainContent_mainContent_txtPostcode').each(function () {
$(this).autocomplete({
source: '/Postcodes.asmx/ReturnPostcodes'
});
});
});
最佳答案
没有显示任何内容的原因是您没有为自动完成功能提供正确的数据格式,也没有指定它如何加载数据。 您可以从 Web 服务返回 JSON 或 XML 格式,也可以使用 jquery 自行解析响应。结账jquery ui autocomplete site对于远程 JSONP 和解析一次 XML 数据示例。
关于jquery - ASP.NET Jquery 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8490280/