Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253

    funzione js per modifica parziale textbox

    Ciao a tutti, avrei bisogno di un aiutino (o aiutone fate voi!) per effettuare un'operazione via javascript che mi sta facendo impazzire.

    Come amministratore di un sito di fantacalcio, mi sto occupando di fornire all'utente la funzionalità di invio della formazione sfruttando Javascript lato client e ASP lato server.

    Per quanto riguarda i controlli in input è tutto OK, l'utente sceglie correttamente dalla propria rosa di calciatori e li mette in campo secondo l'ordine classico dei ruoli, il modulo scelto e altre condizioni come ad esempio l'obbligatorietà di avere 1 portiere.

    Quando intendo mettere in campo, significa proprio letteralmente mettere in campo, infatti cliccando sulla <td> contenente il nome del calciatore, all'interno di una tabella predefinita avente cn immagine di sfondo un campo di calcio, compare il nome del calciatore scelto mentre un campo hidden viene valorizzato con gli ID dei calciatori selezionati.

    Il mio problema nasce qui: come posso regolarmi nel caso in cui l'utente scegliesse 1 calciatore sbagliato e volesse cambiarlo? Ad oggi deve x forza tornare indietro, nel senso di riaggiornare la pagina, e ricominciare da capo poichè non sono in grado di costruire una funzione che mi permette di fare la rimozione dell'ID errato dal campo hidden di cui sopra.

    C'è qualche anima pia in grado di aiutarmi? Potrei anche postare il codice che va in input se dovesse essere necessario. Vi aspetto numerosi...

  2. #2
    Ciao,
    la prima che mi viene in mente è di conservare in un array le 'mosse' che compie l'utente e con un tasto 'Annulla' (classico Undo) dargli la possibilità di annullare le sue operazioni.
    In javascript non è difficile implementare il meccanismo.

    spero di averti dato una buona idea

    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    credo (anzi rileggendo è così) di non essere stato chiaro... il problema non è di fargli eliminare completamente la formazione e quindi anche i campi hidden, ma di fargli fare una rimozione parziale

    Mi spiego: se x sbaglio l'utente ha scelto un centrocampista da inserire e se ne accorge subito, durante o alla fine del compilamento vorrei che potesse cliccare sul nome di quel calciatore per rimuoverne la visibilità in campo (e lo so fare) e rimuoverne l'ID corrispondente dal campo hidden che li raccoglie tutti (e non lo so fare!!!)

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    in poche parole...

    così come all'evento onclick sulla cella del nome, questo diventa visibile nella cella di campo corrispondente e il campo hidden si valorizza con l'ID relativo, vorrei che all'onclick sul nome del calciatore presente in campo succedesse la cosa opposta, cioè quella zona di campo torna vuota (mi basta reimpostare lo style:visibility:hidden) e l'ID del calciatore tolto viene eliminato dal campo hidden
    Come posso risolvere?

  5. #5
    Io la ho pensata cosi:
    ogni giocatore è un oggetto composto da ID, NOME e UTILIZZATO (true/false)
    la SQUADRA è un array di giocatori.

    Quando aggiungi o togli un giocatore dalla formazione:
    1) resetti il campo hidden
    2) ripercorri tutto l'array squadra e valorizzi l'hidden solo con i giocatori che sono utilizzati.

    Mi pare che possa funzionare.
    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    potrebbe essere una soluzione, ma c'è un problema!

    nel codice che mette in campo i giocatori non faccio uso di array, nel senso che gli ID per il passaggio dei parametri li butto dentro il campo hidden e poi nella pagina asp che processa il tutto faccio fare lo split dei valori.

    Dato che questa parte è funzionante e non vorrei toccarla, avevo pensato che al click sul giocatore da togliere si potesse attivare una nuova funzione che attraverso opportuni passaggi percorra tutto il contenuto della casella hidden fino ad arrivare al valore da eliminare.
    La casella hidden è valorizzata così: ID1,ID2,...,IDn

    pensavo: se riuscissi a splittare anche in javascript dopo il click sul calciatore da togliere (del quale conosco il valore dell'ID) non potrei applicare un ciclo for che analizza il contenuto di HIDDEN un ID alla volta e lo ricrea "pulendolo" dell'ID eliminato?

  7. #7
    Si puoi farlo,
    esiste la split() in javascript.

    Cmq,
    il post di prima si riferiva solamente al lato client,
    ovvero da implementare in javascript, senza minimamente toccare il funzionamento lato server.

    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    si si l'avevo capito

    quello che però non so, dal punto di vista del codice javascript di cui tutto sono meno che un maestro, è come fare questa cosa!

    Una volta scatenato l'evento click sul nome del giocatore richiamerò una funzione svuotahidden(IDdatogliere) e il ciclo for posso farlo per I=0; I= n-1 dove n sarà il numero dei calciatori inseriti fino a quel momento.
    Data per buona questa cosa, immagino che lo split devo applicarlo prima di entrare nel ciclo altrimenti farebbe sempre la stessa cosa ma allora devo farti due domande:

    1) come devo impostare lo split? Non conosco proprio il codice povero me...
    2) dato che il valore di HIDDEN è ad es. 1,2,3,4,5..,n come faccio a scorrere di virgola in virgola all'intero del ciclo una volta che ho splittato?Deve entrare in gioco cmq un array?Spero di no...

  9. #9
    Eh,
    senza array non vedo soluzione:
    cmq lo split() restituisce un array, e cmq devi eseguire un ciclo for.
    allora anzichè basarti sul campo hidden,
    vale la pena lavorare sul concetto di squadra come array di tanti giocatori.

    Insomma, ribadisco, lavora con gli oggetti giocatori, squadra e formazione.

    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    se non mi sono rincitrullito tutto insieme se io splitto 1,2,3,4,5,...,n

    ottengo 1 2 3 4 5 o sbaglio?

    quindi come dici te ho già 1 array di valori, solo che quello che non sono in grado di fare è portarmi alla posizione corretta in cui si trova il valore da me cercato all'intero dell'array...non conosco la sintassi javascript per fare sta cosa, anche se concettualmente mi sembra di avere inquadrato il problema è trovato anche 1 soluzione accettabile, o sbaglio?

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.