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

    form con 4 bottoni e 2 campi testuali

    Ciao, spero che qualcuno di voi mi possa dare uno spunto di riflessione,

    ho un form con 4 bottoni e 2 campi testuali
    tutti i bottoni sono stati "inizializzati " con il TYPE= "SUBMIT"

    2 bottoni PRELEVA E DEPOSITA fanno riferimento alla stessa pagina .asp mentre invece gli altri due, MOVIMENTI E RESETDB fanno riferimento ad altre pagine asp

    il mio problema è il seguente:
    dovrei fare dei controlli Javascript, in particolare devo evitare la situazione in cui sia il campo testuale per prelevare, sia quello per deposito siano entrambi uguali a zero

    ho provato a fare in questo modo

    function controllo2()
    {
    var element = document.getElementById("idaltro");
    var element2 = document.getElementById("iddeposito");
    var altro = element.value;
    var deposito = element2.value;
    if (altro.length == 0 && deposito.length == 0 )
    {
    alert("campi vuoti");
    return false;
    }
    .....
    .....
    .....
    }

    in questo modo cliccando sui pulsanti PRELEVA e DEPOSITA funziona tutto a meraviglia ma BLOCCA anche gli altri bottoni, MOVIMENTI E RESETDB.
    Vorrei che questi 2 facciano tranquillamente il loro lavoro ( indirizzandomi verso le pagine da me specificate )

    Ho provato anche in questo modo:

    if (altro.length == 0 && deposito.length == 0 && (document.getElementById("id_del_bottone_MOVIMENTI ").onclick=false ))
    {...
    ..
    }
    ma non funziona.e come se lui se ne fregasse di getElementById
    Come posso fare per risolvere il problema?

    ps: tutti i bottoni sono di tipo submit semplicemente perchè avevo dei problemi a indirizzare gli altri bottoni a delle pagine diverse da quella messa in ACTION.
    attualmente sono dichiarati cosi:
    <input type="submit" value="RESET" onClick="this.form.action='resetdb.asp'"id="idrese t">

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Benvenuto, non essendo ben chiaro il problema, ipotizzo che sostituendo i pulsanti submit con dei pulsanti button dovresti risolvere, nel caso che cosi non fosse ti consiglio di postare un link alla pagina pubblica oppure postare l'html di tutta la pagina (inserita tra i tag [ code ] .... [ / code] è l'asterisco #).
    Ciao.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    scusate se faccio degli errori, ma è la prima volta che mi trovo a dover chiedere aiuto su un forum.la pagina purtroppo è mista, dentro c'è anche roba di ASP.Vi posto la parte relativa al form ( dove poi dovrò fare i controlli JS )

    codice:
    <form name="prendo" id="idprendo" action="azione.asp" method="get" onSubmit="javascript: return controllo2();">
    <table border="1px" cellpadding="8" cellspacing="10">
    <tr><th width="183">SALDO DISPONIBILE</th><td width="46" align="right"> <% Response.write(rst("val")) %> </td></tr>
    <tr><th height="162">prelievi disponibili
      
    
    
        <label>
          <input type="radio" name="RadioGroup1" value="50" id="RadioGroup1_0" onClick="document.getElementById('idaltro').disabled =true">
          50 euro</label>
          
    
        <label>
          <input type="radio" name="RadioGroup1" value="100" id="RadioGroup1_1" onClick="document.getElementById('idaltro').disabled =true">
          100 euro</label>
        
    
        <label>
          <input type="radio" name="RadioGroup1" value="150" id="RadioGroup1_2" onClick="document.getElementById('idaltro').disabled =true">
          150 euro</label>
        
    
       
        altro <input type="text" name="RadioGroup1" id="idaltro" onClick="document.getElementById('iddeposito').disabled=true">
      </p></th>
      <td><input name="deposito" id="iddepos" value="DEPOSITO" type="submit" onClick="this.form.action='azione.asp'"><td><input name="cifradepos" type="text" id="iddeposito" onClick="document.getElementById('idaltro').disabled=true">
      </tr>
      
      
    <tr><td> <center><input type="submit" value="PRELEVA" id="idpreleva"> </center></td> <td><input name="nmovimenti" type="submit" onClick="this.form.action='movimenti.asp'" value="OPERAZIONI" id="idmovimenti"></td> 
    <td><center><input type="submit" value="RESET" onClick="this.form.action='resetdb.asp' " id="idreset"> </center></td></tr>
    
    
    </table>
    
    </form>
    ripeto quello che vorrei fare:
    devo controllare che i campi testuali non siano vuoti e allo stesso tempo rendere "liberi " i due bottoni, cioè, anche non inserendo nulla nel campo "altro" o nel campo "deposito" devo comunque essere in grado di andare alla pagine dei movimenti o del reset.

    Mi parlavi di fare delle modifiche ai bottoni specificando "button". cosi facendo non riesco ad andare a alla pagina da me scelta. Ho anche provato il metodo:
    codice:
    <input name="prova" type="button" value="ciao" onClick="window.open("pagina.html/asp")">
    cosi funziona, ma apre un altra pagina, mentre le mie specifiche impongono di non aprire altre pagine. se ci fosse un metodo per rimanere nella stessa pagina sarei a cavallo.

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    <form name="prendo" id="idprendo" action="" method="get">
    <table border="1px" cellpadding="8" cellspacing="10">
    <tr><th width="183">SALDO DISPONIBILE</th>
      <td width="46" align="right" id="disponibile"><% Response.write(rst("val")) %></td>
    </tr>
    <tr><th height="162">prelievi disponibili
      
    
    
        importi <select name="importi" id="importi" onChange="if(this.options.selectedIndex!=0){document.getElementById('idaltro').setAttribute('disabled','disabled')}else{document.getElementById('idaltro').removeAttribute('disabled')}">
          <option value="0">Seleziona</option>
          <option value="50">50 €</option>
          <option value="100">100 €</option>
        </select></p>  
        
    
    altro
        <input name="idaltro" type="text" id="idaltro" onkeyup="if(this.value.length>0){document.getElementById('importi').setAttribute('disabled','disabled');this.className=''}else{document.getElementById('importi').removeAttribute('disabled','disabled');}if(this.value.length ==document.getElementById('disponibile').innerHTML.length && this.value>document.getElementById('disponibile').innerHTML){alert('disponibilità insufficente');document.getElementById('disponibile').className='errore';document.getElementById('idpreleva').setAttribute('disabled','disabled')}else{document.getElementById('disponibile').className='';document.getElementById('idpreleva').removeAttribute('disabled','disabled')}">
      </p>
      </th>
      <td><input name="deposito" id="iddepos" value="DEPOSITO" type="submit" onClick="if(document.getElementById('iddeposito').value==''){alert('Inserisci un importo da versare');document.getElementById('iddeposito').className='errore';return false}else{this.form.action='azione.asp'}"><td><input name="cifradepos" type="text" id="iddeposito" onkeyup="if(this.value.length>0){this.className=''}else{this.className='errore'}">
      </tr>
      
      
    <tr><td> <center><input type="submit" value="PRELEVA" id="idpreleva" onClick="if(document.getElementById('importi').options.selectedIndex==0 && document.getElementById('idaltro').value==''){alert('Inserisci un importo da prelevare');document.getElementById('idaltro').className='errore';return false}else{this.form.action='paginaprelivo.asp'}"> </center></td> <td><input name="nmovimenti" type="submit"  value="OPERAZIONI" id="idmovimenti" onClick="this.form.action='movimenti.asp'"></td> 
    <td><center><input type="submit" value="RESET" onClick="this.form.action='resetdb.asp'" id="idreset"> </center></td></tr>
    </table>
    
    </form>
    e aggiungi questo stile nella pagina:
    <style type="text/css">
    .errore{
    border: 1px solid #990000;
    }
    </style>
    manca la action al pulsante preleva verifica, non è la soluzione migliore ma altrimenti dovevo modificarlo completamente e non sapendo la logica ho preferito soprassedere, ho dovuto comunque fare alcune piccole modifiche studiati un attimo il codice.


    P.S. funziona correttamente con IE 7, FF 3.0.7, Chrome, safari 3.2.2
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Accidenti,non ho parole,ti ringrazio per la celerità nella risposta,
    ti confesso che i primi minuti sono entrato in confusione, più che altro perchè non ero abituato a leggere il codice in orizzontale

    Ci sono alcuni metodi che non conoscevo e che sono molto utili.
    Ottima l'idea di fare un controllo JS anche sulla disponibilità prima del prelievo,era un controllo che avevo fatto fare ad Asp. per sicurezza ho inserito anche un controllo sui campi testuali per verificare che il valore immesso sia un numero, non si sa mai che qualcuno scriva qualcosa

    alla fine il risultato era quello che volevo. Grazie tante!!!
    mi hai dato parecchi spunti di rilfessione.

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.