Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466

    [JS]Mi aiutate a modificare questo minuscolo script?

    Ciao a tutti.

    Un mio amico (che purtroppo ora è all' estero)mi ha fatto questo piccolo javascript.

    Avrei bisogno di farci una piccola modifica ma non ci riesco.

    Mi potete aiutare.

    codice:
    <HTML>
    <HEAD>
    <STYLE>
    .javascript { color: white; background-color: orange; }
    </STYLE>
    <SCRIPT>
    var lastname = 0;
    function addField (form) {
      if (document.getElementById) {
        var input1 = document.createElement('INPUT');
        var input2 = document.createElement('INPUT');
        var input3 = document.createElement('INPUT');
        var acapo = document.createElement('BR');
    
          if (document.all) { // what follows should work 
                              // with NN6 but doesn't in M14
            input1.type = "text";
            input1.name = "campoA" + lastname;
            input1.value = "campoA" + lastname;
            
            input2.type = "text";
            input2.name = "campoB" + lastname;
            input2.value = "campoB" + lastname;
            
            input3.type = "text";
            input3.name = "campoC" + lastname;
            input3.value = "campoC" + lastname;
          }
          else if (document.getElementById) { // so here is the
                                              // NN6 workaround
            input1.setAttribute('type', "text");
            input1.setAttribute('name', "campoA" + lastname);
            input1.setAttribute('value', "campoA" + lastname);
            
            input2.setAttribute('type', "text");
            input2.setAttribute('name', "campoB" + lastname);
            input2.setAttribute('value', "campoB" + lastname);
            
            input3.setAttribute('type', "text");
            input3.setAttribute('name', "campoC" + lastname);
            input3.setAttribute('value', "campoC" + lastname);
          }
        lastname++;
        form.appendChild(input1);
        form.appendChild(input2);
        form.appendChild(input3);
        form.appendChild(acapo);
      }
    }
    
    </SCRIPT>
    </HEAD>
    
    <BODY>
    <FORM NAME="formName">
    <INPUT TYPE="HIDDEN" VALUE=0 NAME="totale">
    Aggiungi una riga:
    <INPUT TYPE="button" VALUE="add field"
           ONCLICK="addField(this.form);
           this.form.totale.value = lastname;"
    >
    
     <INPUT TYPE="submit">
    
    <HR>
    
    </form>
    
    <HR>
    
    </BODY>
    </HTML>
    In pratica vorrei ci fosse un campo text

    <INPUT TYPE="text" name"tot">

    che al suo interno contenesse la moltiplicazione del campoB0*campoC0 poi una volta inserti dei valori in campoB1 e campoC1 vorrei tale campo contenesse (campoB0*campoC0+campoB1*campoC1+campoB2*campoC2+. ......)

    Mi potete aiutare?

    Grazie di cuore, Mc

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    Io pensavo fosse una banalità ma mi sa tanto che mi sono sbagliato.

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non e` proprio una banalita`, ma si puo` fare.

    Conviene procedere in due step:
    in ogni "riga" occorre aggiungere un campo (anche hidden) con il prodotto dei singoli fattori della "riga"; alla fine ci sara` un campo tot che contiene la somma di tutti i parziali.

    Ora non ho tempo per fare il tutto, ma se tu fai la parte hard, ti posso fare le funzioni JS da usare.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    Mich grazie mille per la risposta, il problema è che io di javascript non so proprio nulla, infatti tutta lo cosa è in php mysql e l' unico pezzo in js è questo (e l' ha fatto il mio amico).

    Cosa intendi per parte hard?

    Se me lo spieghi ci provo.

    Grazie di cuore, Mc

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il tuo script costruisce un pezzo di pagina HTML.

    Ora per fare quello che chiedi, occorre modificare la parte di costruzione, poi aggiungere delle funzioni JS che vengono chiamate da eventi che succedono nei campi cosi` introdotti.

    Per fare gli script e` un giochetto, invece per scrivere la parte che costruisce i campi occorre molta attenzione, controllando che il codice che viene inserito sia corretto (occorre comunque modificare lo script che gia` c'e`).
    Per parte "hard" io intendevo la parte di costruzione dei campi necessari.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    mchorney ha scritto in data 10-05-2004 10:30

    Ciao Mich_volevo ringraziarti per aver prestato attenzione al mio problema relativo alla discussione:

    http://forum.html.it/forum/showthre...150#post5732150

    Alla fine ho risolto facendo fare il calcolo del totale al database.

    Se possibile vorrei chiederti ancora un consiglio.

    Sono da poco laureato in informatica e sto collaborando con una multinazionale come progettista di database (la mia specialità all' università), il progetto pilota che stiamo facendo è tutto in php e mysql e serve per la gestione in remoto di alcune loro attività all'estero.

    L'unica parte in javascript è quella che hai già visto.

    Volevo chiederti se è possibile modificare quello script in modo che per ogni riga ci sia pure un tasto delete e che premendolo venga cancellata la riga di afferenza.

    Mi puoi dare una dritta su come procedere?

    Mi dispiace molto se ti disturbo ma se faccio bene l'applicazione pilota vengo assunto ma purtroppo io di javascript so poco o nulla ragion per cui sono costrettoa rompere.

    Ti ringrazio di cuore, Mc
    Ma perche` scrivi in privato?
    Preferisco che gli interventi restino nel forum, dato che possono servire ad altri.

    Se sai gia` programmare, in due giorni impari il JS: ti basta un tutorial (tipo quello di HTML.it) ed un reference (ad esempio devGuru, anche se quello del W3C e` piu` professionale e completo)

    Il problema della cancellazione su client, e` che quello che fai non viene scritto nel Database.

    In ogni riga puoi mettere un bottone, che invia al server un codice che indica di cancellare la riga: poi il server puo` rispedire la pagina aggiornata.

    Oppure si puo` anche fare una cosa ibrida, ma e` bene che tutto passi attraverso il server, altrimenti l'utente crede di aver fatto un'operazione che invece e` rimasta in locale.

    Se ri-analizzi il problema alla luce di quanto detto sopra, poi ti posso aiutare.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    Grazie per risposta e scusa se ho mandato un pvt, nonpensavo potesse interessare ad altri.

    L' idea sarebbe questa:

    Il codice postat non fa altro che aggiunere campi che vengono riempiti ed inviati al db solo in un secondo tempo. Quindi uno prima genera il numero di righe che gli servono (una per volta da specifiche, tipo se vuole 50 articoli 50 righe) le riempe e poi invia i dati che verranno registari sul db.

    Io vorrei che se uno ho per esempio generato 30 righe (quindi 30 articoli)e si rende conto che l' articolo alla riga 12 non gli serve prema il testo delete (ce ne sarà uno per ogni riga) e la riga 12 viene cancellata, poi potrà tranquiollamente dire invia il tutto al db.

    Nonso se mi sonospiegato bene ma sepro di si.

    Grazie mille, Mc

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    Originariamente inviato da Mich_
    Il problema della cancellazione su client, e` che quello che fai non viene scritto nel Database.
    E' proprio quello che voglio, infatti i dati saranno inviati solo dopo che uno ha eventualmente cancellato le righe che reputa opportune.

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    OK allora vuoi che le righe che marchi come cancellate siano colorate in modo differente, indi alla fine avrai un tasto "invia le modifiche" e questo verra` inviato al server.

    Prima di procedere con la codifica, occorre sapere cosa si aspetta il server.
    esempi:
    un campo hidden con i numeri di riga cancellati
    un campo hidden con dei codici identificativi
    tanti campi, uno per ogni riga
    oppure i campi che NON vengno cancellati
    ....

    Nel frattempo pensa ad inserire un campo in piu` per ogni riga.
    Puo` essere un checkbox, ed avra` nome tipo "cancN" dove N e` il numero della riga (come i vari campi della stessa riga)

    Poi serve conoscere il codice HTML di una riga e gli eventuali script associati (mi pare che hai fatto modifiche dall'ultimo codice postato).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    L' idea sarebbe come hai giustamente detto tu che la riga cancellata diventi rossa e che venga generato un campo hidden ol numero di riga .

    Il codice di cui sopra non è stato modificato.

    Grazie,Mc

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.