Многопользовательский контроль с автозаполнением jquery не показывает весь список - PullRequest
0 голосов
/ 12 сентября 2011

На моем сайте asp.net C # у меня есть требование добавить автозаполнение для некоторых текстовых полей.Для этого я использую автозаполнение jquery.

У меня есть родительский элемент управления, а также два дочерних элемента управления (только для текстовых полей) внутри него.Оба пользовательских элемента управления имеют свой собственный список автозаполнения.

Проблема в том, что при запуске программы только один список автозаполнения показывает список элементов.Двое других молчат!cs "Inherits =" Controls_Contact "%> <% @ Register Src =" ContactSub.ascx "TagName =" ContactSub "TagPrefix =" ContactSub_UC "%>

<script type="text/javascript">
function LoadList_contact()
{
    alert("check main");
    $("#<%= ContactSurnameTextBox.ClientID %>").autocomplete({
        source: "../ashx/AutoComplete_Contacts.ashx",
        minLength: 1,
        select: function (event, ui)
        {
            $(this).next().val(ui.item.id);
            $("#<%= ContactIdTextBox.ClientID %>")[0].value = ui.item.id;
            __doPostBack('<%= ContactSurnameTextBox.ClientID %>', '');
        },

        search: function (event, ui)
        {
            $(this).next().val('');
            $("#<%= ContactIdTextBox.ClientID %>")[0].value = '';
        }

    })
    .data("autocomplete")._renderItem = function (ul, item)
    {
        return $("<li></li>")
            .data("item.autocomplete", item)
            .append("<a><table cellpadding='0' cellspacing='0' border='0' width='250'><tr><td width='*' valign='top' align='left'>" + item.value + "</td><td width='50px' valign='top' align='left'></td></tr></table></a>")
            .appendTo(ul);
    };
}

<asp:TableRow>
    <asp:TableCell ID="ContactSubCell" runat="server">
        <ContactSub_UC:ContactSub ID="ContactSub" runat="server" />
    </asp:TableCell>
</asp:TableRow>


<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ContactSub.ascx.cs" Inherits="Controls_ContactSub" %>

<% @ Register src = "ProductsTextbox.ascx" tagname = "ProductsTextbox" tagprefix = "ProductsTextbox_UC"%> <% @ Register src = "BrandLine.ascx" tagname = "BrandLine" tagprefix = "BrandLine_UC"%>

<asp:TableCell ColumnSpan="3">
    <BrandLine_UC:BrandLine ID="BrandLine" runat="server" />
</asp:TableCell>

<asp:TableCell ColumnSpan="3">
    <ProductsTextbox_UC:BrandLine ID="ProductsTextbox" runat="server" />
</asp:TableCell>

Спасибо

Rbz

1 Ответ

0 голосов
/ 12 сентября 2011
<input id="first_AT"><input id="second_AT">

Для каждого входа укажите разные идентификатор или класс.

$('#first_AT, #second_AT').autocomplete();
...