我正在尝试使用JQuery Autocomplete,但我想我无法从我的处理程序中获取它所期望的格式。
以下是处理程序的功能。这是另一个问题......
context.Response.ContentType = "text/plain";
var companies = GetCompanies(); //This returns a list of companies (List<string>)
foreach (var comp in companies)
{
context.Response.Write(comp + Environment.NewLine);
}
这不起作用。它肯定会被调用,它会返回我希望此代码返回的内容。有什么想法吗?
答案 0 :(得分:6)
它确实需要采用JSON格式,这里是我之前使用的大纲的样本:
class AutoCompleteEntry
{
public int id { get; set; }
public string label { get; set; }
public string value { get; set; }
}
private void GetAutoCompleteTerms()
{
Response.Clear();
Response.ContentType = "application/json";
//evaluate input parameters of jquery request here
List<AutoCompleteEntry> autoCompleteList= new List<AutoCompleteEntry>();
//populate List of AutocompleteEntry here accordingly
JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
string json = jsSerializer.Serialize(autoCompleteList);
Response.Write(json);
Response.End();
}
答案 1 :(得分:1)
响应需要采用JSON格式。请参阅http://docs.jquery.com/UI/Autocomplete,其中讨论了使用指定URL的字符串。