Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    funzione aggiungi e sottrai

    Salve a tutti, ho bisogno di una mano e quindi invoco il vostro aiuto.

    Premetto che non conosco molto bene il javascript ma durante la creazione del mio sito web sono inciampato nella necessità di fare la seguente funzione:

    praticamente nella mia pagina ho 4 valori inizialmente impostati a 10. Affianco a questi valori vi è un più e un meno, in questo modo: - 10 +. Inoltre prima di questi valori ho la seguente frase : "puoi distribuire ancora 8 punti". Praticamente se clicco il pulsante - il valore deve diminuire mentre i punti che posso assegnare aumenteranno a 9 altrimenti il contrario. Infine vi sarà una submit che invierà il risultato di questi valori (che ovviamente si trovano in un form).

    Solamente che non so come procedere. Avevo pensato a una funzione di questo tipo:
    Codice PHP:
    function point(fieldbuttonval){
        
    num parseInt(val);
        if(
    button == "sub"num num-1; else if(button == "add"num num+1;
        
    document.getElementById(field).innerHTML=num;

    Ma non so come far capire che i valori sono cambiati e che alla volta successiva la funzione non deve lavorare più su 10 ma sul nuovo valore modificato.

    Grazie.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133

    Re: funzione aggiungi e sottrai

    Originariamente inviato da Draxent
    ...
    Ma non so come far capire che i valori sono cambiati e che alla volta successiva la funzione non deve lavorare più su 10 ma sul nuovo valore modificato.
    Dipende se i dati inviati li salverai in un db li ricuperai con un linguaggio lato server (asp/php) altrimenti devi impostare un cookie ma sarà una aggiornamento limitato a quel singolo pc.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Si i dati li invio dopo a un database attraverso il php.

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Allora chiedi di far spostare la discussione link (segnala al moderatore) sul forum php il javascript non centra nulla.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    se il problema e' inviare/salvare spostiamo in php
    se e' contare quanti punti puoi ancora assegnare mentre l' utente opera con questi tasti + e - e' ancora di competenza di javascript

  6. #6
    Quello che non so fare e far capire al php i valori dei punteggi modificati dalla funzione point.
    Ad esempio :
    La situazione iniziale è questa :
    puoi ancora distribuire 8 punti
    Forza : - 10 + | Costituzione : - 10 + | Destrezza : - 10 + | Saggezza : - 10 + |

    Poi dopo aver cliccato 4 volte sul pulsante + di forza, 4 volte sul pulsante + di costituzione, 2 volte sul pulsante - saggezza e 2 volte sul pulsante + destrezza :
    La situazione finale è questa :
    puoi ancora distribuire 0 punti
    Forza : - 14 + | Costituzione : - 14 + | Destrezza : - 12 + | Saggezza : - 8 + |


    E questi valori : 14, 14 ,12 ,8 voglio che siano valori php in modo da saperli gestire.

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ma quando sei a 0 con la disponibilità, con che logica decrementi 1 degli altri 3 dati cioè nel tuo esempio incrementi destrezza e cali saggezza perché?
    In che senso voglio che siano valori php, vuoi aggiornare i valori in tempo reale con ajax?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    form con 4 campi (anche di tipo hidden se non vuoi farli vedere all' utente) e lo invii ...come facevano gli antichi.

    per la gestione in tempo reale del massimo consentito usi una variabile globale:
    var massimoConsentito=48;

    ad ogni pressione di + o -
    funzione che
    - cicla sui 4 campi
    - se il totale (somma del parseInt del valore di ogni campo) e' uguale al massimoConsentito e si sta cercando di aggiungere -> ferma tutto con un messaggio d' errore per l' utente
    - altrimenti procede a diminuire/aumentare la caratteristica relativa:
    modifica il valore di quel campo
    se i campi sono hidden avrai, immagino, 4 elementi generici, div per esempio, che mostri all' utente, in cui andrai a scrivere i valori
    per il div corrispondente al campo hidden modificato sovrascriverai l' innerHTML
    document.getElementById('id_div_Forza').innerHTML= document.nomeForm.nomeCampoForza.value;

    - al submit del form ricontrolli, sempre ciclando sui 4 campi, che non si sforato il massimoConsentito

    buon divertimento

  9. #9
    No nel mio esempio, dopo aver usato gli 8 punti per aumentare di 4 valori sia forza che costituzione, calo di 2 punti la saggezza in modo da avere altri 2 punti a disposizione per aumentare la destrezza.... cmq era solo un esempio.

    Non conosco ajax ma giustamente ora che ci penso potrei far cambiare dal javascript anche i valori dei campi forza, costituzione, destrezza e saggezza in modo che quando l'utente clicca sul tasto invia saranno inviati i valori dei tasti modificati.

    Allora il problema rimane solo il fatto che la mia funzione non prende i valori modificati ma sempre il valore 10. Come posso fare?

  10. #10
    ok grazie a tutti ci sono riuscito .

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.