Questa supposizione è assolutamente errata, nessuno sviluppatore con un minimo di conoscenza del DOM la attuerebbe.
La normale prassi consiste nell'associare un evento al click su una cella e poi sostituire l'HTML della cella con qualcos'altro.
Ti scrivo un esempio con jQuery:
Questa soluzione è la normale prassi e va bene nella maggior parte dei casi, considerando che dovrai comunque paginare la tabella.codice:$(function(){ $('#table_id td').click(function(){ var cella_cliccata=$(this); var contenuto_della_cella=$(this).html(); var nuovo_contenuto='<input value="'+contenuto_della_cella+'">'; cella_cliccata.html(nuovo_contenuto); }); });
Se gli elementi cui associare l'evento fossero davvero molti, esistono degli approcci per evitare di associare un evento ad ogni singolo elemento, migliorando così le performances generali. Con jQuery si può usare delegate.