2010-08-11 112 views
2

我想为我的web应用中的文本提供自动完成选项。我有SQL服务器数据库表中的主数据。我在谷歌,并发现如何使用autocomplte。所有的例子都使用web服务来做到这一点。我无法创建一个Web服务来解决这个问题。是否有可能通过查找代码背后的数据库值来实现自动完成?如果有的话,任何人都可以提供任何样本链接供参考?使用Ajax自动完成

由于提前,

Jebli

回答

3

这取决于数据的体积。有2个选项:

  • 将其发送到先发制人(或许JSON或HTML)的网页源
  • 客户端让客户端查询它根据他们的意见

第二如果数据量不重要,这很常见,因为您可以查询何时(例如)他们输入了3个字符; 非常有用名称和其他长列表。

重新提供网络服务;这不一定是一个完整/复杂的网络服务;只是一个简单的路线或ashx(例如)返回过滤的数据。

jquery autocomplete plugin支持这两种情况,虽然现在jQuery UI插件已经部分废弃了。

是否有可能从数据库代码查找值背后

嘛实现自动完成,也就是在服务器 - 所以你基本上是在谈论相同的“Web服务”你说你不能这样做...我也认为你应该将2个函数(创建页面和提供自动完成结果)分离成单独的文件(/ pages/whatever)。

+0

我只有一个文本框,我必须为整个应用程序实现sutocomplte。我应该为此功能创建一个新的Web服务吗?如果有其他方法,这会更好。谢谢回复。 – Jebli 2010-08-11 07:28:48

+0

@Jebli - 我认为你过分强调“网络服务”;它只是一个返回一些数据的url。 Ashx将完成这项工作。 Aspx *可以*做到这一点,但很难得到正确的格式。显然MVC路线是最简单的。 – 2010-08-11 07:45:31

+0

好的感谢您的意见。你的建议对我非常有用。谢谢。 – Jebli 2010-08-11 08:01:53

1

一个简单的方法是创建一个新的aspx页面,将自动完成查询作为查询字符串参数,在数据库中查找结果并将响应作为XML或JSON返回。