Die Suche im AutoSuggest-Textfeld funktioniert mit Visual Studio, funktioniert aber nach dem Hochladen auf die Website n
Posted: 01 Jan 2025, 20:41
Ich möchte einen automatischen Vorschlag, wenn der Benutzer in TexBox1 etwas auf meiner Website durchsucht. Er schlägt automatisch Text aus meiner SQL-Datenbank unter TextBox1 vor. Ich verwende C# asp.net. Der folgende Code funktioniert in Visual Studio sehr gut. Er schlägt etwas Text aus meiner Datenbank vor, aber wenn ich ihn auf das Cpanel-Suchergebnis (Vorschlag) meiner Website hochlade, wird nichts angezeigt und es wird auch kein Fehler angezeigt. Ich habe es auf viele Arten ausprobiert, aber dies ist das erste Mal, dass ich Code sehe, der in Visual Studio, aber nicht auf der Website-Seite ausgeführt wird. Ich bin ernsthaft enttäuscht. Bitte überprüfen Sie jemanden.
Mein Default.aspx-Code:
Textfeldcode im Body-Tag:
Default.aspx.cs-Code:
Mein Default.aspx-Code:
Code: Select all
$(document).ready(function () {
SearchText();
});
function SearchText() {
$("#TextBox1").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/GetName",
data: "{'Name':'" + document.getElementById('TextBox1').value + "'}",
dataType: "json",
success: function (data) {
if (data.d.length > 0) {
response($.map(data.d, function (item) {
return {
label: item.split('/')[0],
val: item.split('/')[1]
}
}));
}
else {
response([{ label: 'No Records Found', val: -1 }]);
}
},
error: function (result) {
alert("Error");
}
});
},
select: function (event, ui) {
if (ui.item.val == -1) {
return false;
}
$('#lblUserId').text(ui.item.val);
}
});
}
Code: Select all
Code: Select all
[WebMethod]
public static List GetName(string Name)
{
List Result = new List();
using (SqlConnection con = new SqlConnection("Data Source=Myservername;Initial Catalog=MyDatabase;Persist Security Info=True;User ID=myID; password=mypassword"))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "Select Model as Name from AAProduct_Details where Model LIKE '%'+@SearchEmpName+'%'";
cmd.Connection = con;
con.Open();
cmd.Parameters.AddWithValue("@SearchEmpName", Name);
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Result.Add(dr["Name"].ToString());
}
con.Close();
return Result;
}
}
}