Molto spesso quando dobbiamo mostrare i dati in una tabella, l'ultima colonna della tabella contiene dei link che eseguono operazioni come la cancellazione o l'apertura di un popup con il dettaglio dell'elemento selezionato. In questi casi una delle tecniche spesso usate è quella di impostare una funzione JavaScript nell'attributo href del link impostando come parametro della funzione l'id dell'elemento della riga.
Questa tecnica va benissimo, ma presenta l'inconveniente di legare la generazione dell'HTML e la gestione degli eventi lato JavaScript. Per ovviare a questo problema, per ogni tag a possiamo generare un attributo data-id all'interno del quale impostiamo l'id della riga a cui il tag a appartiene.
Successivamente, lato JavaScript ci sottoscriviamo al click di tutti i tag a della tabella recuperando l'id tramite l'attributo data-id. Nel seguente codice possiamo vedere un esempio di questa tecnica.
<table> <tr> <td><a href="javascript:;" data-id="1">Edit</a></td> </tr> <tr> <td><a href="javascript:;" data-id="2">Edit</a></td> </tr> </table>
$(function(){ $("table a").click(function(ev){ alert($(ev.target).attr("data-id")); }); });
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Definire stili a livello di libreria in Angular
Testare l'invio dei messaggi con Event Hubs Data Explorer
Utilizzare un service principal per accedere a Azure Container Registry
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel
Eseguire i worklow di GitHub su runner potenziati
Cancellare una run di un workflow di GitHub
Potenziare Azure AI Search con la ricerca vettoriale
Gestire la cancellazione di una richiesta in streaming da Blazor
Creare gruppi di client per Event Grid MQTT
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework