为什么AutoCompleteExtender没有触发?

时间:2010-04-20 08:56:01

标签: c# asp.net ajaxcontroltoolkit autocompleteextender

我对ASP AutoCompleteExtender控件有一些问题。我在我的页面中有一个工作正常,但我在同一页面中放了另一个,我无法让它工作。使用HTTP Analyzer,当我键入与其关联的文本框时,不会触发查询。有人有想法吗?

两者都使用不同的ContextKey参数调用相同的Web服务。 web服务不能成为原因,因为它在第一种情况下工作(DevMgrTxtBox),甚至在第二种情况下都没有调用(DevTxtBox)。两个控件的属性类似,我只是更改了第二个控件的ID和targetControlID。

以下代码位于ContentPlaceHolder中。我正在使用VS2005和.NET 2.0。 AjaxControlToolkit.dll的版本为1.0.20229.0。

<小时/> 编辑:找到解决方案。 ID不是唯一需要唯一的,BehaviorID属性也必须是唯一的。没有记录。

<tr>
  <td>
    <asp:Label ID="DevtMgrLbl" runat="server" Text="Development Manager"></asp:Label>                    
  </td>
  <td>
    <asp:UpdatePanel runat="server" id="devMgrPanel">
      <contenttemplate>
        <asp:TextBox id="DevMgrTxtBox" runat="server"></asp:TextBox>
        <ajaxToolkit:AutoCompleteExtender id="AutoCompleteRole1" runat="server" CompletionSetCount="5" EnableCaching="true" BehaviorID="autoCompleteExtender" CompletionInterval="100" MinimumPrefixLength="2" ServiceMethod="GetRoleList" ServicePath="AutoCompleteRoles.asmx" TargetControlID="DevMgrTxtBox" ContextKey="DM">
        </ajaxToolkit:AutoCompleteExtender> 
      </contenttemplate>
      <triggers>
        <asp:AsyncPostBackTrigger ControlID="DevMgrTxtBox" EventName="TextChanged"></asp:AsyncPostBackTrigger>
      </triggers>
    </asp:UpdatePanel>                    
  </td>
</tr>
<tr>
  <td>
    <asp:Label ID="DevLbl" runat="server" Text="Developer"></asp:Label>
  </td>
  <td>
    <asp:UpdatePanel runat="server" id="devPanel">
      <contenttemplate>
        <asp:TextBox ID="DevTxtBox" runat="server"></asp:TextBox>
        <ajaxToolkit:AutoCompleteExtender id="AutoCompleteRole2" runat="server" CompletionSetCount="5" EnableCaching="true" BehaviorID="autoCompleteExtender" CompletionInterval="100" MinimumPrefixLength="2" ServiceMethod="GetRoleList" ServicePath="AutoCompleteRoles.asmx" TargetControlID="DevTxtBox" ContextKey="DEV">
    </ajaxToolkit:AutoCompleteExtender>
      </contenttemplate>
      <triggers>
        <asp:AsyncPostBackTrigger ControlID="DevTxtBox" EventName="TextChanged"></asp:AsyncPostBackTrigger>
      </triggers>
    </asp:UpdatePanel>                    
  </td>
</tr>

0 个答案:

没有答案