【问题标题】:ajax autocomplete extender with multiple column list具有多列列表的 ajax 自动完成扩展器
【发布时间】:2013-05-21 22:11:58
【问题描述】:

我正在寻找一个使用带有 DataTable 的自动完成功能的示例。自动完成应该有一个除了单列之外的表结构。

任何提示..?谢谢!提前

标记如下

 <asp:TextBox ID="txtAutoCmplte" runat="server"></asp:TextBox>
  <asp:AutoCompleteExtender ID="txtAutoCmplte_AutoCompleteExtender" 
    runat="server" CompletionInterval="1" ServiceMethod="GetNames" 
    TargetControlID="txtAutoCmplte" 
        CompletionListCssClass="autocomplete_completionListElement" 
        MinimumPrefixLength="1" BehaviorID="AutoCompleteEx" 
        onclientpopulated="onListPopulated">
  </asp:AutoCompleteExtender>
  <asp:ScriptManager ID="ScriptManager1" runat="server">
  </asp:ScriptManager>

【问题讨论】:

  • with DataTable 是什么意思? Autocomplete 来自 DataTableAutocomplete 显示多列的建议列表?
  • @TheVillageIdiot 我的意思是自动完成建议列表,将 sql 数据库中的多列显示为数据表。 .请帮帮我。
  • 看看这个答案:stackoverflow.com/a/12537306/360171我相信你可以利用那个答案中提出的OnClientItemDataBinding的方法,清除扩展器生成的自动完成元素的内容,然后从@重新创建它987654327@ 对象。否则需要额外定制 AutoCompleteExtender 的源代码
  • @YuriyRozhovetskiy 您建议的链接我无法理解。由于我是 asp.net 的新手,您能否为这个问题提出任何其他方法?

标签: asp.net sql ajax autocompleteextender


【解决方案1】:

您可以相应地创建查询
示例

 select 
       [columnName]
 from
       [tableName]
 where
       [columnName1] like %[input value]%  or
       [columnName2] like %[input value]% 

或者您想要显示两列的组合结果,然后您可以使用union,如下所示

 select 
       [columnName]
 from
       [tableName]
 where
       [columnName] like %[input value]% 
 union
      select 
       [columnName1]
 from
       [tableName]
 where
       [columnName1] like %[input value]%  

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-15
    • 1970-01-01
    • 2011-02-02
    • 2012-10-07
    • 1970-01-01
    • 2013-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多