Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213

    moltiplicazione tra campi di un form

    Slve a tutti, dovrei fare la moltiplicazione in una funzione javascript di 2 campi di un form:
    la funzione javascript che ho fatto è:
    codice:
         function prezzoTotArt(obj)
         {
            var tot = obj.value * document.frmRicerca.prezzoU.value;
            return tot;
         }
    il resto del codice che può interessare è:
    codice:
       function articoloSelezionato(obj)
        {
            var a= obj.value.split(";");
            return a[1];
         }
         
      
    </script>
    </head>
    <body>
    
    
     
    <form method="POST" name="frmRicerca" action="Lista.asp">
    <table width="30%" id="table" align="center">
        <tr>
            <td>Articolo</td>
            <td></td>
            <td>Quantità</td>
            <td></td>
            <td>Prezzo Unitario</td>
            <td></td>
            <td>Prezzo Totale</td>
        </tr>
    
        <tr>
            <td>
    	<select size="1" name="Articolo" onchange="document.frmRicerca.prezzoU.value=articoloSelezionato(this);">
    	<option value=""></option>
    <%
    	             do while not objRsProd.EOF
    %>
    		<option value="<%=objRsProd.fields("Code") & ";" & objRsProd.fields("RetailPrice")%>"><%= objRsProd.fields("Description") %></option>
    <%	
    	                objRsProd.movenext 
    	                loop
    	
    	objRsProd.close
    	objConn.close
    %>
    	</select>
    	</td>  
            <td></td>
    	<td><input type="text" name="qnt" size="10" onBlur="document.frmRicerca.prezzoT.value=prezzoTotArt(this);"/></td>
    	<td></td>
    	<td> <input type="text" name="prezzoU" size="10"/></td>
    	<td></td>
    	<td><input type="text" name="prezzoT" size="10"/></td>
        </tr>
    il problema è che nella text del prezzo totale mi scrive NaN, come posso risolvere?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    1,309
    e come se stessi cercando di moltipplicare pippo*pluto, devi trasformare i testi che recuperi in numeri Number(testo)*Number(testo2)... Prova dovrebbe essere questo il problema
    Ciao By Peter_Pan...

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    var tot = Number(obj.value) * Number(document.frmRicerca.prezzoU.value);

    se scrivo così il problema resta lo stesso

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    il problema è nel campo prezzoU penso perchè il valore in sqlserver2005 è stato messo come money ed ha la virgola al posto del punto.perchè provando a mettere 3 al posto di: Number(document.frmRicerca.prezzoU.value), funziona. come posso risolvere?

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    se a qualcuno potrà servire o risolto così:

    document.frmRicerca.prezzoU.value=document.frmRice rca.prezzoU.value.replace(",",".");
    var tot=(obj.value) * document.frmRicerca.prezzoU.value;
    return tot;

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.