c# - 在 C# 中构建服务器端自动完成

标签 c# asp.net autocomplete arraylist server-side

我想知道是否可以在服务器端构建自动完成功能(使用 ASP.NET 和 C#)。假设我有一个城市类......

public class City
{
    public string m_CityName;
    public string m_CityId;
    public City() { }
    public City(string cityName, string cityId) 
    { m_CityName = cityName; m_CityId = cityId; }
}

有了这个,我在服务器端构建了一个城市的 ArrayList。我想要的是构建一个自动完成功能,它将显示城市的名称,但会返回城市的 ID。

我可以在服务器端执行此操作还是必须在客户端执行? 如果我需要在客户端执行此操作,最好、最快和最安全的方法是什么。

城市的数据,name 和 id,来自一个 XML 文件。

谢谢。

最佳答案

如前所述,我个人会使用 AJAX。让服务器管理数据逻辑通常是一个更好的主意(以我的经验)。

但是如果它是静态文件,您可以使用 jQuery 加载 XML。这里有一个例子:

http://net.tutsplus.com/tutorials/javascript-ajax/use-jquery-to-retrieve-data-from-an-xml-file/

使用 AJAX 和 jQuery XML 方法时,注意不要用请求轰炸服务器(或客户端),过去我将搜索限制为每三次按键,搜索长度也超过三个字符.但正如 David 所提到的,延迟请求也是一种选择。

关于c# - 在 C# 中构建服务器端自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11101852/

相关文章:

javascript - 为什么asp按钮的javascript click()函数在chrome浏览器中不起作用?

c# - 更改 Visual Studio 2008 项目文件夹中整个文件的属性

c# - 重定向到 ASP.NET 中的其他页面时确认框不起作用

javascript - 在进行任何基于键盘的操作后, Angular Material (日期选择器)焦点将放在 body 上

c# - 获取outlook中附件的outlookItem类型

c# - 从 c# 更新 sql 中的一个单元格

c# - 如何使用 Global.asax 文件重定向用户?

angular - PrimeNg 自动完成在清除时发送空字符串

javascript - 如何取消编辑/禁用缓存输入(文本类型)值?

c# - 在ConcurrentQueue中入队和TryDequeue