L
lorologiodoro
Ciao a tutti,
sto sviluppando una jsp che mostra all'utente una serie di celle sulle
quali ad ogni
evento onclick() eseguo la routine SelezionaSpazio passando gli id sia
della cella
che dei livelli superiodi di raggruppamento su cui ad ogni click devo
sommare o
sottrarre 1.
Il colore della cella deve cambiare inoltre da coloreOn a coloreOff. Le
celle sulla pagina sono in media di 300.
Secondo voi, calcolando che ad
ogni click devo modificare anche dei campi hidden, è corretto il mio
modo di accedere ai singoli elementi dell'HTML???
Esistono modi per accedere alle variabili HTML in modo piu rapido?
Grazie
//*****************************************************************************//
function selezionaSpazio(idtabe, idcomune, idstrada, colorOn,
colorOff) {
// Verifico che lo spazio sia selezionabile
var selezionabile = document.getElementById('slz' + idtabe);
if (selezionabile.value == 'S') {
var calledByScript = arguments[1];
var tabe = document.getElementById('tbl' + idtabe);
var sceltoComune = document.getElementById('slc' + idcomune);
var sceltoStrada = document.getElementById('sls' + idstrada);
var scelta = document.getElementById('ssp' + idtabe);
//var scelta = document.getElementByName('SELSPEJ' + idtabe);
var prezzo = document.getElementById('prs' + idtabe);
var valorePre = document.getElementById('valpre');
var immagscelta = document.getElementById('bas' + idtabe);
var immagopzione = document.getElementById('bal' + idtabe);
var opzione = document.getElementById('opz' + idtabe);
document.JPRE02.SAVPAGJ.value = 'N';
if (!tabe) return;
if (scelta.value != 'S') {
tabe.bgColor = colorOn;
tabe.title = 'Spazio prenotato';
sceltoComune.value = Number(sceltoComune.value)+ 1;
sceltoStrada.value = Number(sceltoStrada.value)+ 1;
scelta.value = "S";
immagscelta.src='../gif/led-red.gif';
immagscelta.alt='Spazio selezionato';
valorePre.value = parseFloat(valorePre.value) +
parseFloat(prezzo.value);
}
else {
tabe.bgColor = colorOff;
tabe.title = 'Spazio non prenotato';
sceltoComune.value = Number(sceltoComune.value)- 1;
sceltoStrada.value = Number(sceltoStrada.value)- 1;
scelta.value = "N";
immagscelta.src='../gif/led-gray.gif';
immagscelta.alt='Seleziona Spazio';
immagopzione.src='../gif/led-gray.gif';
opzione.value = 'N';
immagopzione.alt='Opziona Spazio';
valorePre.value = parseFloat(valorePre.value) -
parseFloat(prezzo.value);
}
//if (!calledByScript) saveCategState();
// Verifico se lo spazio era gia venduto
var giavenduto = document.getElementById('gvn' + idtabe);
if (giavenduto.value == 'S') {
tabe.bgColor = '#CCCCCC';
tabe.title = 'Spazio venduto';
selezionabile.value = 'N'
immagscelta.src='../gif/led-red.gif';
}
}
}
//*****************************************************************************//
sto sviluppando una jsp che mostra all'utente una serie di celle sulle
quali ad ogni
evento onclick() eseguo la routine SelezionaSpazio passando gli id sia
della cella
che dei livelli superiodi di raggruppamento su cui ad ogni click devo
sommare o
sottrarre 1.
Il colore della cella deve cambiare inoltre da coloreOn a coloreOff. Le
celle sulla pagina sono in media di 300.
Secondo voi, calcolando che ad
ogni click devo modificare anche dei campi hidden, è corretto il mio
modo di accedere ai singoli elementi dell'HTML???
Esistono modi per accedere alle variabili HTML in modo piu rapido?
Grazie
//*****************************************************************************//
function selezionaSpazio(idtabe, idcomune, idstrada, colorOn,
colorOff) {
// Verifico che lo spazio sia selezionabile
var selezionabile = document.getElementById('slz' + idtabe);
if (selezionabile.value == 'S') {
var calledByScript = arguments[1];
var tabe = document.getElementById('tbl' + idtabe);
var sceltoComune = document.getElementById('slc' + idcomune);
var sceltoStrada = document.getElementById('sls' + idstrada);
var scelta = document.getElementById('ssp' + idtabe);
//var scelta = document.getElementByName('SELSPEJ' + idtabe);
var prezzo = document.getElementById('prs' + idtabe);
var valorePre = document.getElementById('valpre');
var immagscelta = document.getElementById('bas' + idtabe);
var immagopzione = document.getElementById('bal' + idtabe);
var opzione = document.getElementById('opz' + idtabe);
document.JPRE02.SAVPAGJ.value = 'N';
if (!tabe) return;
if (scelta.value != 'S') {
tabe.bgColor = colorOn;
tabe.title = 'Spazio prenotato';
sceltoComune.value = Number(sceltoComune.value)+ 1;
sceltoStrada.value = Number(sceltoStrada.value)+ 1;
scelta.value = "S";
immagscelta.src='../gif/led-red.gif';
immagscelta.alt='Spazio selezionato';
valorePre.value = parseFloat(valorePre.value) +
parseFloat(prezzo.value);
}
else {
tabe.bgColor = colorOff;
tabe.title = 'Spazio non prenotato';
sceltoComune.value = Number(sceltoComune.value)- 1;
sceltoStrada.value = Number(sceltoStrada.value)- 1;
scelta.value = "N";
immagscelta.src='../gif/led-gray.gif';
immagscelta.alt='Seleziona Spazio';
immagopzione.src='../gif/led-gray.gif';
opzione.value = 'N';
immagopzione.alt='Opziona Spazio';
valorePre.value = parseFloat(valorePre.value) -
parseFloat(prezzo.value);
}
//if (!calledByScript) saveCategState();
// Verifico se lo spazio era gia venduto
var giavenduto = document.getElementById('gvn' + idtabe);
if (giavenduto.value == 'S') {
tabe.bgColor = '#CCCCCC';
tabe.title = 'Spazio venduto';
selezionabile.value = 'N'
immagscelta.src='../gif/led-red.gif';
}
}
}
//*****************************************************************************//