Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171

    funzione somma in javascript

    con una tabella sql creo una pagina asp cosi:

    orea oreb totale
    5 2 7(quando digito deve scrivere 7)
    ecc.....

    ho provato cosi:
    <input name="orea<%=CStr(vx)%>" type="text" value="<%=elencoOutput(vx,4)%>" id="n" onKeyUp="somma()" />

    <input name="oreb<%=CStr(vx)%>" type="text" value="<%=elencoOutput(vx,5)%>" id="n" onKeyUp="somma()" />

    <script>
    function somma() {
    a=eval(document.all.orea.value);
    b=eval(document.all.oreb.value);
    d=a+b
    document.all.totale.value=d;

    }
    ma non funziona.

    come posso dare un errore se la somma supera le 70?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Era da tempo che non vedevo una sintassi simile VVoVe:

    Intanto i nomi dei campi non sono orea e oreb ma gli stessi piu' qualcosa che dipende dalla variabile lato server vx che non conosciamo.

    poi usa semplicemente

    a = parseInt(document.nomeDelForm.nomeDelCampo.value,1 0)

    per ricavare il valore di un input e trasformarlo in numero.

    Precisa "dare un errore" :master:

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171
    Precisa "dare un errore"

    hai ragione,

    (Era da tempo che non vedevo una sintassi simile )
    perche è sbagliata?


    io ho la tabella che la ricavo da un database,
    poi modifico tutti i dati (le ore) e con un submit modifico tutti i record insieme.
    quindi con
    a = parseInt(document.nomeDelForm.nomeDelCampo.value,1 0)
    ricavo il valore del campo (orea e vx?

    grazie

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da tigre2209
    Precisa "dare un errore"

    hai ragione,
    :master:

    (Era da tempo che non vedevo una sintassi simile )
    perche è sbagliata?
    Un tantinello.... poi funziona solo su IE (forse)

    io ho la tabella che la ricavo da un database,
    poi modifico tutti i dati (le ore) e con un submit modifico tutti i record insieme.
    Perdona, ho la mia eta', non ci ho capito nulla....

    quindi con
    a = parseInt(document.nomeDelForm.nomeDelCampo.value,1 0)
    ricavo il valore del campo (orea e vx?
    Hai provato? la difficolta' sta nel sapere quanto vale vx per il (ogni?) campo.

    grazie
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171
    ho provato e la modifica a tutti ii record funziona.
    se no che soluzione potrei adottare?
    io dovrei modificare tutti i record in tabella (un 100 o piu') e salvare le modifiche tutte insieme.
    Dovrei a questo punto rinunciare al controllo sul totale di ogni riga:
    esempio

    codice cognome oreA 10 oreB 5 totale 15
    1 CAIO 10 5 15
    2 PIPPO 5 0 5
    ecc.....

    INVIA

    oreA e oreB vengono inserite.

    Hai provato? la difficolta' sta nel sapere quanto vale vx per il (ogni?) campo.

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da tigre2209
    Hai provato? la difficolta' sta nel sapere quanto vale vx per il (ogni?) campo.
    Mi spiace, ho difficolta' a farmi capire... e tu posti informazioni frammentarie e insufficienti.

    Posta un link alla pagina.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171
    Scusa ma non riesco a spiegarmi.
    In pratica dovrei trovare la soluzione per aggiornarnamento multiplo di record, questo funziona ma vorrei che la somma dei due campi non superi le 30.

    Questo è il codice principale.



    <td width="156" height="31"><div align="left"> <font color="#0000FF"><span class="Stile6">Cognome</span></font></div></td>
    <td width="128"><div align="left"> <font color="#0000FF"><span class="Stile6">Nome</span></font></div></td>
    <td width="46"><div align="center"> <font color="#0000FF"><span class="Stile6">Id</span></font></div></td>
    <td width="28"><div align="center" class="Stile6">FER </div></td>
    <td width="36"><div align="center"><span class="Stile6">FEST</span></div></td>
    <td width="45"><span class="Stile6">Totale</span></td>
    </tr>
    <%for vx = 0 to UBound(elencoOutput)
    Response.Write ("<input type=""hidden"" name=""ID"& CStr(vx) &""" value="""& elencoOutput(vx,0) &""" />")%>
    <tr>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
    </tr>
    <tr>
    <td ><%=elencoOutput(vx,3)%></div></td>
    <td ><%=elencoOutput(vx,1)%></td>
    <td ><%=elencoOutput(vx,2)%></td>
    <td ><%=elencoOutput(vx,0)%></td>
    <td ><input style="font-style:inherit" size="1" name="fer<%=CStr(vx)%>" type="text" value="<%=elencoOutput(vx,4)%>" id="n" onKeyUp="somma()" />
    </div></td>
    <td width="36"><div align="center">
    <input size="1" style="font-style:inherit" name="fest<%=CStr(vx)%>" type="text" value="<%=elencoOutput(vx,5)%>" id="n1" onKeyUp="somma()" />
    </div></td>
    <td width="45"><input size="1" style="font-style:inherit" name="tot<%=CStr(vx)%>" type="text" id="n2" disabled="disabled" />
    </div></td>
    </tr>
    <tr>
    <td height="4" colspan="7" align="center"></td> </tr>
    <tr>
    <%next
    Response.Write ("<input type=""hidden"" name=""TOT_TIPO"" value="""& vx-3 &""" />")%>
    <td height="26" colspan="3" align="center"><label>
    <input type="submit" name="invia" value="Invia" onClick="document.forms['form1'].action='salva.asp'">
    </label></td>
    <td></td>
    <td></td>
    <td colspan="3"><label> </label>
    </td>
    </tr>
    </table>
    <script>
    function somma() {
    a=eval(document.all.fer.value);
    b=eval(document.all.fest.value);

    d=a+b ;
    document.all.totale.value=d;

    }

    </script>

    </form>

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 © 2025 vBulletin Solutions, Inc. All rights reserved.