Ich habe ein Problem, ein keyup Ereignis Refactoring, die ich in meinem System haben, sieht die Veranstaltung zunächst wie folgt aus:jQuery, keyup Ereignis nicht ausgelöst
$('#quotation_search_client').on('keyup',function(){
param=$('#quotation_search_client').val();
if(param.length>=4){
var params = {
social_reason: $('#quotation_search_client').val()
}
var clients=ClientServices.getByFilter(params);
var addresses=ClientServices.getAddresses(clients.clients);
QuotationServices.fillClients(clients.clients, addresses);
}else{
$('#customers_results').html("");
}
});
Wenn es so ist, es funktioniert perfekt, aber wenn ich ändern sie es so aus:
$('#quotation_search_client').on('keyup',QuotationServices.searchClient({social_reason: $('#quotation_search_client').val()}));
und definieren sie die Funktion "searchClient" wie folgt aus:
QuotationServices.searchClient = function(params){
param=$('#quotation_search_client').val();
if(param.length>=4){
var clients=ClientServices.getByFilter(params);
var addresses=ClientServices.getAddresses(clients.clients);
QuotationServices.fillClients(clients.clients, addresses);
}else{
$('#customers_results').html("");
}
};
es nicht mehr funktioniert, n Nichts passiert, wenn ich etwas eintippe. Die Konsole zeigt keine Fehler an, deshalb habe ich eine console.log am Anfang der searchClient -Funktion geschrieben und scheinbar wird sie beim Laden meiner Seite ausgelöst, was zeigt, dass params.social_reason mit einer leeren Zeichenfolge kommt, aber wenn ich etwas eintippe, z Ich sagte, nichts passiert. Ich weiß nicht, was ich vermisse, ich habe nur den Code des Ereignisses in die searchClient-Funktion kopiert und eingefügt und die Var-Parameter gelöscht (weil ich es als Parameter erhalten werde), jede Hilfe?
gleiche Antwort andere Frage. Ich überlegte, http://stackoverflow.com/q/8462381/497418 oder eine der vielen anderen verwandten Fragen zu verwenden, aber sie sind meistens 'setTimeout' verwandt. Am Ende das gleiche Grundproblem. – zzzzBov