【发布时间】:2011-05-26 16:15:49
【问题描述】:
我的网站有越来越多的 AJAX 调用。
我的 AJAX 代码如下所示:
function setupNameAutocomplete(id) {
$(id).autocomplete({
source: function(request, response) {
$.ajax({
url: "selectName.aspx/getNameAutocomplete",
....
最初,上面的 javascript 代码用于用户输入要搜索的人名的网页上;我决定要对名称进行自动填充。
但是,随着我继续开发网站,我决定希望能够在许多页面上使用相同的“名称”自动完成功能。从逻辑上讲,将我的 javascript 代码放在外部 .js 文件中而不是在每个页面上重复它是有意义的。
我也想将处理 AJAX 的 .net 代码放在它自己的文件中也是有道理的。 .net 自动完成代码如下所示:
[WebMethod]
public static IEnumerable<string> getNameAutocomplete(string text)
{
IEnumerable<string> values = lookupNamesThatStartWith(text);
return values;
}
当然,这些代码似乎属于外部 .asmx 或 .ashx 文件,但除非我从 selectName.aspx 调用上述代码,否则我的 javascript 代码无法正常工作。
如何在单独的代码文件中获取我的 AJAX .net 代码?
【问题讨论】:
-
由于插件或jQuery UI版本的自动完成,知道哪个可能会有所帮助。
标签: asp.net jquery ajax autocomplete