除了“q”之外,如何将附加参数传递给 Jquery 自动完成功能参数

发布于 2024-11-16 12:36:06 字数 195 浏览 6 评论 0原文

我使用过 jquery autocomplete 1.1 版本。

我必须获取特定圈子的商店列表。

为此,我有下拉列表和文本框。

下拉列表有圆圈列表,

我需要将此“cid”作为附加参数传递给 asp.net 处理程序 我可以在哪里检索这个“cid”并根据 文本输入“cid”。

任何建议将不胜感激。

I have used jquery autocomplete 1.1 version.

I have to get list of shops for a particular circle.

For this I have drop down list and a textbox.

Drop down list has the list of circles ,

I need to pass this "cid" as the additional parameter to the asp.net Handler
where i can retrieve this "cid" and query the data base based on the
text entered the the "cid".

any suggestions would be appreciated.

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

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

发布评论

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

评论(2

最单纯的乌龟 2024-11-23 12:36:06

您可以将回调函数用于自动完成的source选项 。因此,您需要做的就是设置一个回调函数,该函数执行 AJAX 调用本身来获取可能的匹配项:

source: function(request, response) {
    var cid = 'your cid value from where ever you get it';
    $.ajax({
        // Whatever AJAX options you need go here
        url: '/some/place',
        data: { q: request.term, cid: cid },
        success: function(data) {
            response(data.split('\n'));
        }
    });
}

当前搜索词位于回调内的 request.term 内。获得可能匹配的扩展列表后,调用 response 函数将其返回给自动完成小部件。出于说明目的,我假设您的服务器将匹配项作为换行符分隔的匹配项列表返回,您可能需要对实际数据做一些不同的事情。

You can use a callback function for the autocomplete's source option. So, all you need to do is set up a callback function that does an AJAX call itself to get the possible matches:

source: function(request, response) {
    var cid = 'your cid value from where ever you get it';
    $.ajax({
        // Whatever AJAX options you need go here
        url: '/some/place',
        data: { q: request.term, cid: cid },
        success: function(data) {
            response(data.split('\n'));
        }
    });
}

The current search term is inside request.term inside the callback. Once you have the expanded list of possible matches, call the response function to hand it back to the autocomplete widget. For illustrative purposes I'm assuming that your server returns the matches as a list of newline separated matches, you might have to do something a little different with your real data.

骄兵必败 2024-11-23 12:36:06

我通过传递 cid 作为查询字符串找到了解决方案。

  $(document).ready(function() {
        var cid = $("#ctl00_cphMain_hdnCid").val();
        $("#ctl00_cphMain_txtSearch").focus();
        $("#ctl00_cphMain_txtSearch").autocomplete("AutoCompleteHandler.ashx?cid=" + cid + "&storetype=1", { autoFill: false });
    });

在 autocompletehandler.ashx 中我检索到了“cid”
如下所示:

int cid = Convert.ToInt32(context.Request.QueryString["cid"].ToString().Trim());

并将其用作 SqlCommand 对象的参数

I have found the solution by passing cid as the querystring.

  $(document).ready(function() {
        var cid = $("#ctl00_cphMain_hdnCid").val();
        $("#ctl00_cphMain_txtSearch").focus();
        $("#ctl00_cphMain_txtSearch").autocomplete("AutoCompleteHandler.ashx?cid=" + cid + "&storetype=1", { autoFill: false });
    });

In the autocompletehandler.ashx I have retrieved the "cid"
like below:

int cid = Convert.ToInt32(context.Request.QueryString["cid"].ToString().Trim());

and used this as parameter for SqlCommand object

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文