Salve a tutti, sono nuovo del forum ma seguo spesso le guide di html.it. Vi scrivo perch� mi sono imbattuto in un problema che non so proprio come risolvere. Premetto che non sono molto esperto di javascript quindi magari la soluzione pu� essere semplice, ma ora come ora sono bloccato.
Sto cercando di creare una pagina web per la realizzazione di fatture che preveda di aggiungere/eliminare righe relative alle attivit� acquistate (selezionabili tramite un campo select) e ottenere automaticamente il suo importo preso dal database. Quest'ultimo dovrebbe essere editabile e dovrei poter calcolare un eventuale sconto per poi ottenere il suo importo netto. Vorrei inoltre poter addizionare gli importi per poi ottenere il totale della fattura. Non so se sono riuscito a spiegarmi, quindi lascio un link di quello che ho fatto:
http://www.olgiatapark.com/gestionale/forms/test.php
Nell'esempio sono riuscito ad ottenere met� del risultato sperato, ovvero riesco a selezionare l'importo in base alla scelta che viene fatta nella select e da qui editare o applicare lo sconto. Il problema � che quando vado ad aggiungere una riga non ottengo lo stesso risultato. Molto probabilmente il problema sta nel 'name' che forse dovrebbe cambiare ad ogni aggiunta, ma non saprei come risolvere.
Posto il codice se qualcuno potr� aiutarmi
codice HTML:
<script type="text/javascript">$(function(){
var removeLink = ' <a href="#" onclick="$(this).parent().slideUp(function(){ $(this).remove() }); return false">elimina</a>';
$('a.add').relCopy({ append: removeLink});
});
</script>
<script>
var cont = 0;
function selezionaImporto(sel)
{
var id = sel.options[sel.selectedIndex].value;
document.form.selectValue.value = id;
<?php
$quary = "SELECT id, importo FROM $tablePrestazioni";
if ($result = mysqli_query($mysqli_connect, $quary))
{
while ($row = mysqli_fetch_array($result))
{
?>
importoDB = "<?php print $row[0] ?>";
if (importoDB == id)
{
document.form.importo.value = '<?php echo $row[1]?>';
}
<?php
}
}
?>
document.form.conta.value = cont;
}
function calcolaSconto()
{
var percentuale = document.form.sconto.value;
var importo = document.form.importo.value;
var totSconto = (percentuale * importo) / 100;
var totImporto = importo - totSconto;
document.form.totale.value = totImporto;
}
</script>
codice HTML:
<form name="form"><div class="clone">
<select name="prestazione" onchange="selezionaImporto(this)" onmousemove="calcolaSconto()">
<option value="" selected> Scegli
<option value="1"> Opzione 1
<option value="2"> Opzione 2
<option value="3"> Opzione 3
</select>
<label>id:</label><input type='text' name='selectValue'>
<label>importo lordo:</label><input type='text' name='importo'>
<label>percentuale sconto:</label><input type='text' name='sconto' onmousemove="calcolaSconto()" onfocus="calcolaSconto()" onchange="selezionaImporto(this)">
<label>importo netto:</label><input type='text' name='totale' onfocus="calcolaSconto()">
<a href="#" class="add" rel=".clone" onClick="aggiungi();">aggiungi<br></a>
</div>
</form>
Spero di aver dato le informazioni necessarie e ringrazio anticipatamente chiunque vorr� aiutarmi.