Ich versuche hart, dieses Problem zu beheben, aber immer noch nicht die Lösung, versuchte viele Links und Code, aber mit einem kleinen Problem, um dies zu beheben.automatische Suche (Ajax Anruf) funktioniert nicht nach dem Klicken auf die Schaltfläche
PROBLEM:
Ich habe einen Eingabetyp ‚Text‘ die Mitarbeiter Namen zu suchen. Wenn ich anfange, Zeichen wie "WY" einzugeben, werden alle Namen angezeigt, die mit WY beginnen.
Sobald ich die Mitarbeiter ich brauche, kann ich das mit anderen Steuer- und Run PDF-Bericht bewegen (die in einem anderen Tab lädt). Das Problem ist, wenn ich zurück zu der Seite gehe, wo ich anfangen sollte, die Angestellten wieder zu suchen, wird es nicht suchen! wie unten dargestellt:
Hier ist meine Ajax-Code:
$("#EmployeeSearchBox").bind('input propertychange', function() {
if ($('#EmployeeSearchBox').val() != '') {
$('#EmployeeList').empty();
$.ajax({
type: "GET",
url: "SomeSelectionPage.aspx/GetEmployees",
data: { 'searchText': "'" + $("#EmployeeSearchBox").val() + "'" },
dataType: 'json',
contentType: 'application/json; charset=utf-8',
success: function (data) {
//alert('success');
if (data.d.length > 0) {
$("#EmployeeList").removeClass("hideControl").addClass("showControl");
}
else {
$("#EmployeeList").removeClass("showControl").addClass("hideControl");
// $('select').multipleSelect();
alert("No data");
}
$.each(data.d, function (index, value) {
$('#EmployeeList').append($('<option>').text(value.FullName).val(value.EmployeeId));
});
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("Status: " + textStatus); alert("Error: " + XMLHttpRequest.responseText);
}
});
}
else {
$('#EmployeeList').empty();
$("#EmployeeList").addClass("hideControl");
}
});
UI-Steuerung:
<input type="text" id="EmployeeSearchBox" class="search-box" aria-multiselectable="true" />
Bitte lassen Sie mich wissen, was soll ich es fest bekommen tun .
Wo ist Ihr "Ajax-Code" definiert und geladen werden? Sie müssen diesen Code bei jedem Laden des ersten Tabs ausführen lassen. – GregL
Meinst du, ich muss die Ajax-Methode noch einmal anrufen? – Manjuboyz
Wie es aussieht, scheint es, wenn Sie die Tabs ändern, das HTML innerhalb der Registerkarte neu geladen wird. Wenn dies möglicherweise der Fall ist, können Sie mehr Code bereitstellen und zeigen, wie die Registerkarten geladen sind und wo/wann das Ereignis 'input propertychanged' gefunden wurde? – fafafooey