0

我正在开发一个 Visual Web 部件,当用户在文本框中键入内容时(例如在 Google 搜索或 StackOverflow 中的问题标题),我需要在其中列出匹配的数据。

我得到了很多结果,但它适用于典型的 c# 应用程序。我正在寻找可以直接在我的可视化 Web 部件中实现的解决方案。我正在使用 SharePoint 2010 和 VS 2010。

我做了以下事情

安装 Ajax Control 工具包。将 Items 添加到 VS 工具箱并添加以下代码片段。

在 .ascx 文件中

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"></asp:ToolkitScriptManager>
<asp:TextBox ID="txtMovie" runat="server"></asp:TextBox>
<asp:AutoCompleteExtender 
    ID="AutoCompleteExtender1" 
    TargetControlID="txtMovie"  ServiceMethod="GetCompletionList"
    runat="server" UseContextKey="True" />

在.ascx.cs

[System.Web.Script.Services.ScriptMethod()]
[System.Web.Services.WebMethod]      
public static string GetCompletionList(string prefixText, int count, string contextKey)
{           
    return "Hello";
}

但是当我部署时,我收到了这个错误

只能将 ScriptManager 的一个实例添加到页面中。

<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"></asp:ToolkitScriptManager>从我的 .ascx 文件中删除了,但是之后由于一些 js 错误,我无法编辑我的共享页面。

4

1 回答 1

0

不知道为什么它不起作用,遇到了一个可以为您解决问题的 codeplex 功能:http: //spautocomplete.codeplex.com/

另外,查看这个 jQuery 解决方案:http ://sharepointwings.blogspot.in/2012/05/autocomplete-textbox-using-jquery-in.html

也有一个可从:Microsoft.Office.Search.WebControls.AutoCompleteExtender 问候,KS

于 2012-09-18T17:16:31.203 回答