【问题标题】:How to create autocomplete with data from code behind?如何使用来自代码后面的数据创建自动完成?
【发布时间】:2013-07-16 14:34:12
【问题描述】:

在我的 Main.aspx.cs 中,我有一个 XmlDocument。与:

var personName = dataXml.SelectNodes("/GetDocumentsResult/Person/Name");
string[] perNames = new string[personName .Count];

for (int i = 0; i < personName .Count; i++)
{            
    perNames[i] = personName [i].InnerText;
}

我得到所有人的名字。 在 Main.aspx 我有一个搜索输入:

<div data-role="fieldcontain" style="LEFT:15px;TOP:10px;">
  <input name="suche" id="searchinput1"  value="" type="search">
</div>

有很多带有自动完成功能的链接,例如this link,但我不知道如何在aspx中使用perNames。

【问题讨论】:

  • 您可以将值作为 javascript 写入页面,或者将该代码移至 Web 服务并将该服务用作数据源。
  • 你能告诉我如何将值作为 javascript 写入页面吗?
  • 查看 JSON 序列化并将结果字符串写入 Literal 控件。虽然使用网络服务可能会更好。
  • 我发现使用System.Web.Script.Serialization.JavaScriptSerializer我可以序列化,但是如何使用&lt;head&gt;标签内&lt;script&gt;标签内的JSON对象?
  • 您应该能够创建一个Literal 并执行类似MyLiteral.Text = "var autoCompleteData = " + SerializedXml; 的操作,然后在您的javascript 中访问autoCompleteData 变量。

标签: c# jquery asp.net xmldocument


【解决方案1】:

您需要将 JQuery 用于前端部分,这非常简单,然后您需要使用 AJAX 来获取数据列表,然后您就可以像往常一样获得业务和后端部分。看看这里。

http://www.aspsnippets.com/Articles/Using-jQuery-AutoComplete-Plugin-in-ASP.Net.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-17
    • 1970-01-01
    • 2012-04-29
    • 2014-07-22
    • 2018-12-31
    • 2014-10-22
    相关资源
    最近更新 更多