Salve ragazzi, ho un problema io ho una tabella con degli input, nella prima colonna viene riportato un prezzo fisso (non modificabile), nella seconda la commissione (campo vuoto) e nella terza il totale del prezzo fisso+la commissione, vorrei impostare il form esterno in modo che quando aggiungo una cifra mi andra a riempire tutti gli altri campi della commissione, un modo per ora l'ho trovato ma cosi non riesco a modificale i campi delle commissioni una volta inserito il valore sul campo esterno, penso che ci sia un problema di loop, vorrei che questo input esterno mi restituisca i valori sui campi della seconda colonna ma che allo stesso tempo essi siano modificabili.
Vi posto lo script in attesa di vostre risposte, grazie in anticipo.
<html>
<head>
</head>
<body onload="calc();">
<script language="javascript" type="text/javascript">
var commValues = new Array();
var interval;
function startCalc(){
console.log("start calc");
interval=window.setInterval("copyValuesAndCalculat e()",1);
}
function copyValuesAndCalculate() {
var found = false;
var i = 1;
while (!found && i<6) {
console.log("not found i=" + i);
var commissionId = "comm" + i;
var commValue = (document.getElementById(commissionId).value) * 1;
if (!(commValues[i - 1] ==commValue)) {
for (var j = 1; j < 6; j++) {
var priceId = "price" + j;
commissionId = "comm" + j;
document.getElementById(priceId).value = commValue + 150;
document.getElementById(commissionId).value = (commValue * 1);
commValues[j - 1] = commValue;
}
found = true;
}else{
i++;
}
}
}
function stopCalc(){
console.log("stop calc");
window.clearInterval(interval);
}
function calc() {
for (var i = 1; i < 5; i++) {
console.log("i=" + i);
var prezzoId = "prezzoBase" + i;
var commissionId = "comm" + i;
var priceId = "price" + i;
var pb = (document.getElementById(prezzoId).value) * 1;
console.log("pb=" + pb);
var com = (document.getElementById(commissionId).value) * 1;
console.log("com=" + com);
document.getElementById(priceId).value = (pb * 1) + (com * 1);
commValues[i - 1] = com;
}
}
</script>
<form name="formSommatoria">
<table>
<tr id="titolo_campo">
<td>txt</td>
<td>price</td>
<td>empty</td>
<td>tot</td>
</tr>
<tr>
<td>MAT 1</td>
<td><input type=text id="prezzoBase1" value="150" disabled ></td>
<td><input id="comm1" type=text name="commissione_1" onfocus="startCalc();" onblur="stopCalc();"></td>
<td>= <input id="price1" type=text name="prezzo_1" disabled>
</tr>
<tr>
<td>MAT 2</td>
<td><input type=text id="prezzoBase2" value="150"onBlur="stopCalc();" disabled></td>
<td><input id="comm2" type=text name="commissione_2" value="" onfocus="startCalc();" onblur="stopCalc();"></td>
<td>= <input id="price2" type=text name="prezzo_2" disabled>
</tr>
<tr>
<td>MAT 3</td>
<td><input type=text id="prezzoBase3" value="150" disabled></td>
<td><input id="comm3" type=text name="commissione_3" value="" onfocus="startCalc();" onblur="stopCalc();"></td>
<td>= <input id="price3" type=text name="prezzo_3" disabled>
</tr>
<tr>
<td>MAT 4</td>
<td><input type=text id="prezzoBase4" value="150"onBlur="stopCalc();" disabled></td>
<td><input id="comm4" type=text name="commissione_4" value="" onfocus="startCalc();" onblur="stopCalc();"></td>
<td>= <input id="price4" type=text name="prezzo_4" disabled>
</tr>
<tr>
<td><input id="comm5" type=text name="commissione_4" value="" onfocus="startCalc();" onblur="stopCalc();"/></td>
</tr>
</table>
</form>
</body>
</html>