Back to top

Autore Topic: [RISOLTO] chronoform - abilitazione/disabilitazione Button submit con jvscript  (Letto 2486 volte)

Offline alexask

  • Esploratore
  • **
  • Post: 153
    • Mostra profilo
ciao a tutti,

ho spiegato quasi tutto nell'oggetto.
L'idea (già applicato nei miei siti "non joomla") è:
- mettere l'informativa della privacy alla fine di un form;
- mettere un checkbox per l'accettazione dell'informativa;
- all'interno del checkbox inserire un javascript sull'evento onclick che abilita il pulsante submit se il check è positivo e lo disabilita se negativo.

Ho provato a "trasbordare" il mio codice nel Form Code--> Form JavaScript del form ma non funziona.
E' probabile (quasi sicuro) un errore di sintassi e/o scrittura (non sono un mago di javascript e di programmazione in generale  :o

Riporto il codice del Form javascript
Codice: [Seleziona]
function informativa(){
if (this.checked == false) { document.forms['ChronoContact_iscrizione'].button_5.disabled=1; }
else { document.forms['ChronoContact_iscrizione'].button_5.disabled=0; }
}
dove 'ChronoContact_iscrizione' è il nome del form (ricavato dal codice sorgente html del form) e
'button_5' è il nome del <input type="submit">
Riporto il codice html
Codice: [Seleziona]
<div class="form_item">
  <div class="form_element cf_checkbox">
    <label class="cf_label" style="width: 150px;">privacy</label>
    <div class="float_left">
      <input value="1" title="" class="radio" id="check00" name="check0[]" type="checkbox"  checked="checked" onclick="informativa();" />
      <label for="check00" class="check_label">Accetto</label>
     </div>
    </div>
  <div class="cfclear">&nbsp;</div>
</div>

<div class="form_item">
  <div class="form_element cf_button">
    <input value="Invia" name="button_5" type="submit" />
  </div>
  <div class="cfclear">&nbsp;</div>
</div>

riassumendo:
testo informativa (non riportato nel codice)
input del tipo checkbox che:
se spuntato mi visualizza il pulsante Submit
se vuoto NON mi visualizza il pulsante Submit e quindi NON mi permette di inviare il form.

spero di essere stato chiaro nell'esposizione ... a volte ho dei dubbi sulle capacità di farmi comprendere :-)

ciao
Alex
« Ultima modifica: 21 Gen 2011, 01:25:49 da alexask »

Offline alexask

  • Esploratore
  • **
  • Post: 153
    • Mostra profilo
mmm ... stavo leggendo l'articolo di Vales sul form a geometria variabile .....
una delle soluzione (oltre a quella di scrivere in modo corretto il codice :-) ) potrebbe essere quella applicata nell'articolo ... ?

Alex

Offline alexask

  • Esploratore
  • **
  • Post: 153
    • Mostra profilo
Risolto

il problema era come pensavo un errata scrittura del codice.
Riporto i codici sotto per aiutare eventualmente altri:

codice html
Codice: [Seleziona]
...........
<!-- Testo informativa privacy (nel mio caso) -->
...........
<!-- checkbox (accetto l'informativa si/no, messo checked in partenza e richiama la funzione con l'evento onclick) -->
<div class="form_item">
  <div class="form_element cf_checkbox">
    <label class="cf_label" style="width: 150px;">privacy</label>
    <div class="float_left">
      <input value="1" title="" class="radio" id="check00" name="check00" type="checkbox" checked onclick="informativa()" />
      <label for="check00" class="check_label">Accetto</label>
     </div>
    </div>
  <div class="cfclear">&nbsp;</div>
</div>
</fieldset>

<div class="form_item">
  <div class="form_element cf_button">
    <input  value="Invia" name="button_5" type="submit" />
  </div>
  <div class="cfclear">&nbsp;</div>
</div>

Codice javascript
Codice: [Seleziona]
function informativa(){
if (document.getElementById('ChronoContact_iscrizione').check00.checked == false) { document.getElementById('ChronoContact_iscrizione').button_5.disabled=1; }
else { document.getElementById('ChronoContact_iscrizione').button_5.disabled=0; }
}


That's all folks! :-)
notte a tutti
Alex

 



Web Design Bolzano Kreatif