Ich versuche, ein onclick-Ereignis zu jedem der p-Elemente erstellt. Ich muss dies innerhalb der for-Schleife tun, so dass der Rest der Informationen in der "Daten" -Array auf das angeklickte Ergebnis bezieht.Add on click event to p Elemente jQuery
Es ist eine Autocomplete-Suchfunktion, die einen Kontakt nachschlägt und den Namen und den Firmennamen in einem Dropdown-Feld anzeigt. Wenn Sie darauf klicken, werden die entsprechenden Felder mit den anderen Informationen wie E-Mail-Adresse und Telefonnummer ausgefüllt.
Wie würde ich ein onclick-Ereignis zu jedem p-Element innerhalb der for-Schleife hinzufügen?
//Instant Search for Key Contact lookups
$(document).ready(function(){
$('#search_customer').on("keyup input", function(){
/* Get input value on change */
var term = $(this).val();
var resultDropdown = $("#result");
var i = 0;
var results = '';
if(term.length){
$.get("/profile/includes/custom/340/livesearch.php", {query: term}).done(function(data){
// Display the returned data in browser
data = jQuery.parseJSON(data);
for (i = 0; i < data.length; i++) {
results += '<p>' + data[i][0] + ' ' + data[i][1] + ' | <span>' + data[i][2] + '</span></p>';
}
resultDropdown.html(results);
});
} else{
resultDropdown.empty();
}
});
});
Ich würde die Funktion von jedem wollen Onclick, so etwas zu sein:
p.on("click", function(){
$("#search_customer").val(data[i][0] + ' ' + data[i][1]);
$("#customer_email").val(data[i][[5]);
$("#customer_company").val(data[i][6]);
});
Ich müsste noch eine Möglichkeit, die ‚i‘ Variable behalten oder es wird nicht das Array der Ergebnisse halten Sie den angezeigten Namen mit dem Rest der Datenabgleichs (E-Mail, Telefon, etc ..) –
In der Click-Ereignis. $ (this) enthält das angeklickte p-Element. So können Sie das verwenden und erhalten alle Informationen, die Sie auf dem angeklickt p benötigen. Informationen zu Selektoren finden Sie in der JQuery-Dokumentation. –