salve.
avrei la necessità di fare questa cosa :
ho dei moduli di input in una pagina html. per ogni modulo ho degli option select che mi corrispondono, esattamente, alla scelta dell'ora, minuti, secondi.
io ho la necessità di inserire dei moduli al momento tramite javascript. il codice purtroppo diventa troppo massiccio. se (per esempio) ho 10 moduli e ne inserisco 100 (o ne ho già 100 e ne inserisco 10) il codice aumenta in maniera spaventosa (ogni modulo infatti viene rappresentato da circa 200 righe di html).
il codice allegato alla fine del topic mostra cosa vado a caricare per ogni singolo inserimento.
ho provato per esempio a impostare solo un semplice parametro per ogni select option, e il codice in quel caso è leggerissimo. il problema è appunto il grande numero di parametri per ogni select option; quello che mi serve è ottimizzare questo procedimento...
ci son altre metodologie per "rappresentare" quei dati? che ne sò, magari utilizzando delle classi che descrivano una select. o potete consigliarmi qualche altra strategia?
avevo provato anche a implementarlo/richiamarlo dinamicamente (tramite ajax) ma vorrei un effetto "immediato", senza dover aspettare la risposta dal server.
ve ne sarei molto grato per qualsiasi tipo di dritta
Codice PHP:
function addTracklines() {
for(i=indice; i<maxline; i++) {
$('#trackline'+(i-1)).after(' \
<div class="sideoff" id="sideline'+i+'"> \
<div class="sidespace1"></div> \
\
<div class="sidelabel1"> \
Side/Part Name \
</div> \
\
<div class="sidelabel2"> \
<input type="text" disabled="disabled" id="inputrealside'+i+'" name="sides[]" class="inputTLS" maxlength="50" /> \
<input type="hidden" disabled="disabled" id="inputrealsideindex'+i+'" name="sidesindex[]" value="'+i+'" /> \
</div> \
\
<div class="sidelabel3"> \
[url="javascript:void(0)"]Remove[/url] \
</div> \
\
<div class="sidespace2"></div> \
</div> \
\
<div class="trackon" id="trackline'+i+'"> \
\
<div class="trackcounter" id="inputcounter'+i+'"> \
'+(i+1)+' \
</div> \
\
<div class="tracktime1"> \
<select id="inputhh'+i+'" name="hours[]" class="inputTL1"> \
<option>??</option> \
<option value="">-</option> \
<option value="00">00</option> \
<option value="01">01</option> \
// ... tutte le righe da 0 a 12 per le ore...
<option value="12">12</option> \
</select> \
</div> \
\
<div class="tracktime2"> \
<select id="inputmm'+i+'" name="minuts[]" class="inputTL1"> \
<option>??</option> \
<option value="">-</option> \
<option value="00">00</option> \
<option value="01">01</option> \
// ... tutte le righe da 0 a 59 per le i minuti...
<option value="59">59</option> \
</select> \
</div> \
\
<div class="tracktime3"> \
<select id="inputss'+i+'" name="seconds[]" class="inputTL1"> \
<option>??</option> \
<option value="">-</option> \
<option value="00">00</option> \
<option value="01">01</option> \
// ... tutte le righe da 0 a 59 per i secondi...
<option value="59">59</option> \
</select> \
</div> \
\
<div class="trackatl"> \
<input type="text" id="inputatl'+i+'" name="atl[]" class="inputTL2" /> \
</div> \
\
<div class="trackbotton1"> \
<select id="inputside'+i+'" onchange="addSide(\''+i+'\');" class="inputTL3"> \
<option>+ Side</option> \
<option value="">------</option> \
<option value="1">Before</option> \
<option value="2">After</option> \
</select> \
</div> \
\
<div class="trackbotton2"> \
<select id="inputtadd'+i+'" onchange="addTrack(\'2\', \''+i+'\');" class="inputTL3"> \
<option>+ Tracks</option> \
<option value="">------</option> \
<option value="11">+1 Before</option> \
<option value="12">+2 Before</option> \
<option value="13">+3 Before</option> \
<option value="14">+4 Before</option> \
<option value="15">+5 Before</option> \
<option value="">------</option> \
<option value="21">+1 After</option> \
<option value="22">+2 After</option> \
<option value="23">+3 After</option> \
<option value="24">+4 After</option> \
<option value="25">+5 After</option> \
</select> \
</div> \
\
<div class="trackbotton3"> \
[url="javascript:void(0)"]Remove[/url] \
<input type="hidden" name="trackpos[]" value="#" /> \
</div> \
</div>');
}
}