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

    Trovare tutti i pulsanti di una pagina e disabilitarli

    Salve,
    Per approntare velocemente una demo senza che gli utenti possano aggiungere o modificare records, avrei bisogno di un JavaScript che, all'interno della pagina e al caricamento della stessa, trovi e disabiliti tutti gli elementi con type="Submit", "Reset" e "Button"...

    Diciamo che fin quando si tratta di un solo pulsante ci arrivo, ma il mio problema è ciclare attraverso tutti gli elementi della pagina per trovare i suddetti pulsanti...

    Ehm... qualche anima pia mi aiuta?
    Grazie...
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  2. #2
    codice:
    <head>
    <script type="text/javascript">
    <!--
    function disabilita(f) {
    for (n=0; n<document.getElementById(f).elements.length; n++) {
    if (document.getElementById(f).elements[n].type=="button" || document.getElementById(f).elements[n].type=="submit" || document.getElementById(f).elements[n].type=="reset") {
    document.getElementById(f).elements[n].disabled = true;
    }
    }
    }
    -->
    </script>
    </head>
    <body onload="disabilita('modulo');">
    <form id="modulo" action="..." method="post">
    La funzione cicla l'array elements dell'oggetto form e controlla il valore della proprietà type di ciascun elemento del form. Se questo valore è button, submit o reset, imposta la proprietà disabled dell'elemento al valore true. Controlla ovviamente che i valori dell'attributo type dei tuoi pulsanti siano scritti tutti in minuscolo (come dovrebbero essere).

  3. #3
    Grazie, seed_squall_it!
    E' possibile rendere lo script indipendente dal nome del form che viene passato come parametro? Vorrei includere lo script in tutte le pagine una volta per tutte, e càpita che pagine diverse abbiano forms con nomi diversi...
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao ivanhalen,

    potresti avere più di un form per pagina... quindi potresti fare così
    codice:
    function DisabilitaForms(){
      var ff=document.forms
      for(var i=0;i<ff.length;i++)
        for(var j=0;j<ff[i].elements.length;j++)
          if(ff[i].elements[j].type=='button'||ff[i].elements[j].type=='submit'||ff[i].elements[j].type=='reset')
             ff[i].elements[j].disabled=true
    }

  5. #5
    Ottimo, willybit! Grazie!
    Bene, a questo punto credo di avere entrambi gli script che fanno al caso mio, uno "stretto" (seed_squall_it) ed uno "largo" (willybit), da usare a seconda delle occasioni...

    Ho solo modificato lo script di seed_squall_it per controllare che effettivamente il form passato come parametro sia presente nella pagina, altrimenti ottengo un errore javascript:
    codice:
    function Disabilita(f) {
    	if (document.getElementById(f) != null) {
    E' giusto? Di funzionare funziona, ma siccome procedo a tentativi...
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  6. #6
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    basterebbe anche
    codice:
    if (document.getElementById(f)){

  7. #7
    Originariamente inviato da willybit
    basterebbe anche
    codice:
    if (document.getElementById(f)){
    ehm... si, beh, effettivamente va anche così...
    Tu ti meriti un brano ultrametallaro con dedica
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  8. #8
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Originariamente inviato da ivanhalen
    Tu ti meriti un brano ultrametallaro con dedica

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.