asp.net“自动完成” - 用特殊字符填充

发布于 2024-11-17 03:37:39 字数 310 浏览 3 评论 0原文

首先,我使用的是asp.net c#。

所以我在很多网站上进行了搜索,但还没有找到任何解决方案。

我使用 asp.net ajax 扩展中的 autocompleteextender。当我输入特殊字符时,我想在文本框中填充特定的数据列表。例如; “当我在文本框中输入“@”等特定字符时,它应该从数据库中填充特定的数据列表”。

直到文本框出现像“@”这样的字符,它应该填充一些列表。但我不想把它填在第一个词上。在我输入字符“@”后,它应该填充我的列表。

这可以通过 ajax 自动完成扩展器实现吗?如何?如果没有,怎么办?

谢谢

First of all, i'm using asp.net c#.

So i searched in many websites but i didnt find any solutions yet.

I use autocompleteextender from asp.net ajax extension. I want to populate specific data list in a textbox when i typed a special character. For example; "When i type a specific character like "@" in a textbox, it should populate me from the db a specific data list".

Until the textbox has a character like "@" it should populated me some list. But i dont wanna populate it on the first word. After i have typed the character "@", it should populate me the list.

Is this possible with ajax auto complete extender? How? If not, How?

Thank you

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

蘑菇王子 2024-11-24 03:37:39

由于 AjaxControlToolkit 是一个开源项目,因此您可以下载项目源代码并进行所需的所有自定义。在这种特殊情况下,只需添加很少的更改即可:编辑 MicrosoftAjax.Extended 项目的 AutoComplete 文件夹中的 AutoCompleteBehavior.pre.js 文件。您需要进行以下更改:在 _onTimerTick 方法中从

if (text.trim().length < this._minimumPrefixLength) {
            this._currentPrefix = null;
            this._update('', null, /* cacheResults */false);
            return;
        }

To更改为

if (text.trim().length < this._minimumPrefixLength || text.indexOf('@') == -1) {

As the AjaxControlToolkit is an open source project, you can download project sources and make all customization that you need. In this particular case enough to add very few changes: edit the AutoCompleteBehavior.pre.js file in AutoComplete folder of MicrosoftAjax.Extended project. You need following changes: in the _onTimerTick method change from

if (text.trim().length < this._minimumPrefixLength) {
            this._currentPrefix = null;
            this._update('', null, /* cacheResults */false);
            return;
        }

To

if (text.trim().length < this._minimumPrefixLength || text.indexOf('@') == -1) {
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文