【发布时间】:2019-01-03 13:00:30
【问题描述】:
我正在使用 Jquery 对我的文本框实现自动完成,我使用了 Ajax 调用,但是我的 ajax url 不起作用。
当我检查时显示此错误 -> POST http://localhost:51444/Searchoperation/searchvalues 404 (Not Found)
我的 HTML 和脚本代码
<script>
$('#myInput').keyup(function (event)
{
var searchname = $('#myInput').val()
$('#myInput').autocomplete(
{
scroll: true,
selectFirst: false,
autoFocus: false,
source: function(request, response)
{
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Searchoperation/searchvalues",
data: "{'Searchname':'" + searchname + "'}",
dataType: "json",
success: function (data) {
response($.map(data.d, function (item) {
return {
label: item.split('/')[0],
val: item.split('/')[1]
}
}));
},
error: function (result) { }
});
},
select: function (event, ui) {
var vll = ui.item.val;
var sts = "no";
var url = 'search_app.aspx?prefix=' + searchname; // ur own conditions
$(location).attr('href', url);
}
})
})
</script>
<form autocomplete="off">
<div class="search-field" style="width:300px;">-->
<input id="myInput" type="text" name="myCountry" placeholder="SearchName" >
</div>
<input type="submit">
</form>
从数据库中获取值的代码
public List<string> searchvalues(string searchname)
{
try
{
List<string> result = new List<string>();
string connectionstring = @"Data Source=DESKTOP-LTV06QJ\SQLEXPRESS;Initial Catalog=Search;Integrated Security=True";
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "connection_string";
conn.Open();
SqlCommand cmd = new SqlCommand("Sp_Search", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@Emp_Name", searchname);
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
result.Add(string.Format("{0}/{1}", dr["Emp_id"], dr["Emp_Name"]));
}
conn.Close();
return result;
}
catch (Exception ex)
{
return null;
}
}
在文本框中输入的值已读取,但 ajax 调用不起作用。请帮助
【问题讨论】:
-
我希望你在 searchvalues 方法之前声明了 [WebMethod]。你在用asp.net c#吗?
-
添加了 WebMethod.still not working,仍然同样的错误@JitendraRangpariya
-
你在用asp.net c#吗?
-
是的@JitendraRangpariya
标签: javascript c# jquery ajax