Javascript 如何将自动完成结果列为链接?
我是Ajax新手。我需要找到如何将自动完成结果列为链接。当用户单击结果时,应打开该链接。我可以列出相关结果,但找不到如何添加链接。它应该作为html标记添加到脚本中的某个地方。请给我一些线索如何添加html链接 这是我的剧本:Javascript 如何将自动完成结果列为链接?,javascript,asp.net,ajax,Javascript,Asp.net,Ajax,我是Ajax新手。我需要找到如何将自动完成结果列为链接。当用户单击结果时,应打开该链接。我可以列出相关结果,但找不到如何添加链接。它应该作为html标记添加到脚本中的某个地方。请给我一些线索如何添加html链接 这是我的剧本: <script type="text/javascript"> $(document).ready(function () { SearchText(); }); function SearchText() {
<script type="text/javascript">
$(document).ready(function () {
SearchText();
});
function SearchText() {
$(".auto").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/GetAutoCompleteData",
data: "{'question':'" + document.getElementById('txtQuestion').value + "'}",
dataType: "json",
success: function (data) {
response(data.d);
},
error: function (result) {
alert("Error Occurred");
}
});
}
});
}
</script>
$(文档).ready(函数(){
SearchText();
});
函数SearchText(){
$(“.auto”).autocomplete({
来源:功能(请求、响应){
$.ajax({
类型:“POST”,
contentType:“应用程序/json;字符集=utf-8”,
url:“Default.aspx/GetAutoCompleteData”,
数据:“{'question':'”+document.getElementById('txtQuestion')。value+“}”,
数据类型:“json”,
成功:功能(数据){
答复(数据d);
},
错误:函数(结果){
警报(“发生错误”);
}
});
}
});
}
以下是连接到数据库并返回相关结果的方法:
[WebMethod]
public static List<string> GetAutoCompleteData(string question)
{
List<string> result = new List<string>();
using (SqlConnection conn = new SqlConnection("Data Source=xxx;Initial Catalog=xxx;User ID=xxx;Password=xxx+"))
{
using (SqlCommand cmd = new SqlCommand("SELECT Questions,Link FROM DigiQA WHERE Questions LIKE '%'+@quest+'%'", conn))
{
conn.Open();
cmd.Parameters.AddWithValue("@quest", question);
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
result.Add(dr["Questions"].ToString());
}
return result;
}
}
}
[WebMethod]
公共静态列表GetAutoCompleteData(字符串问题)
{
列表结果=新列表();
使用(SqlConnection conn=newsqlconnection(“数据源=xxx;初始目录=xxx;用户ID=xxx;密码=xxx+”)
{
使用(SqlCommand cmd=newsqlcommand(“选择问题,从DigiQA链接,其中的问题类似于“%”++@quest++“%”,conn))
{
conn.Open();
cmd.Parameters.AddWithValue(“@quest”,问题);
SqlDataReader dr=cmd.ExecuteReader();
while(dr.Read())
{
结果.添加(dr[“Questions”].ToString());
}
返回结果;
}
}
}
试试这样的方法
success: function(data) {
response($jQuery.map(data, function(item) {
return {
label: '<a href="yoururl">' + item + '</a>'),
value: item
}
}))
}
成功:函数(数据){
响应($jQuery.map)(数据、函数(项){
返回{
标签:“”),
价值:项目
}
}))
}
我可以通过代码准备此结果吗?如下所示:result.Add(“”);