作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
希望有人能帮忙解决这个问题。我一直在网上上下浏览并通过这个网站寻找答案,但仍然无法让自动完成 AJAX 控件工作。我已经从尝试将其包含在现有站点中转变为将其剥离回到非常基本的形式,但它仍然无法正常工作。我使用 Page Methods 而不是本地 Web 服务时比较幸运,所以这是我的代码
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="droptest.aspx.cs" Inherits="droptest" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" runat="server">
</asp:ScriptManager>
<cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server"
MinimumPrefixLength="1" ServiceMethod="getResults"
TargetControlID="TextBox1">
</cc1:AutoCompleteExtender>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Script.Services;
using System.Web.Services;
public partial class droptest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod]
public string[] getResults(string prefixText, int count)
{
string[] test = new string[5] { "One", "Two", "Three", "Four", "Five" };
return test;
}
}
试图让事情尽可能简单,但我得到的只是带有页面源的自动完成下拉列表(从 <! doctype...
开始)逐个字母,或者在 IE7 中它只是说“未定义”所有列表的下方。
我目前正在使用 Visual Web Developer 2008,它在本地主机上运行。我想我已经用尽了我能找到的所有“试试这个...”选项,从添加 [ScriptMethod] 到更改 Web.Config 中的所有内容。
这段代码有什么明显的错误吗?
可能唯一会产生影响的其他事情是在 Global.asax 中我做了一个 Context.RewritePath 来重写 URL - 这对 AJAX 有任何影响吗?
感谢您提供的任何帮助。
最佳答案
我认为您还需要将您的页面名称包含在 servicePath 中。
<cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server"
MinimumPrefixLength="1" ServiceMethod="getResults" ServicePath="droptest.aspx"
TargetControlID="TextBox1">
</cc1:AutoCompleteExtender>
关于c# - 撕毁我的头发 - ASP.Net AJAX AutoComplete 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1306605/
我是一名优秀的程序员,十分优秀!