Back to top

Autore Topic: [Risolto]form a geometria variabile  (Letto 1824 volte)

Offline Giaxx

  • Appassionato
  • ***
  • Post: 205
    • Mostra profilo
[Risolto]form a geometria variabile
« il: 07 Nov 2010, 22:25:41 »
ho realizzato un form a geometria variabile grazie all'aiuto di vales.con crhonoform.
questo è un esempio molto semplice: inserimento del nome o del cognome
Form HTML:
Codice: [Seleziona]
<div class="form_item">
  <div class="form_element cf_dropdown">
    <label class="cf_label" style="width: 150px;">Inserire</label>
    <select class="cf_inputbox" id="select_0" size="1" title=""  name="inserimento" onChange="updatethis(this.form);">
    <option value="">Choose Option</option>
      <option value="nome">nome</option>
<option value="cognome">cognome</option>

    </select>
   
  </div>
  <div class="cfclear">&nbsp;</div>
</div>

<div id="variabile" style="display: none;">

<div class="form_item">
  <div class="form_element cf_textbox">
    <label class="cf_label" style="width: 150px;">nome</label>
    <input class="cf_inputbox" maxlength="150" size="30" title="" id="text_3" name="nome" type="text" onChange="updatethis(this.form);" />
 
  </div>
  <div class="cfclear">&nbsp;</div>
</div>
</div>
<div id="variabile1" style="display: none;">
<div class="form_item">
  <div class="form_element cf_textbox">
    <label class="cf_label" style="width: 150px;">cognome</label>
    <input class="cf_inputbox" maxlength="150" size="30" title="" id="text_4" name="cognome" type="text" onChange="updatethis(this.form);"/>
 
  </div>
  <div class="cfclear">&nbsp;</div>
</div>

</div>

Form JavaScript:
Codice: [Seleziona]
function updatethis(form) {     
var tipo=form.elements['inserimento'].value;   
   
if (tipo=="nome") {           
document.getElementById("variabile").style.display = 'block';           
} else {           
document.getElementById("variabile").style.display = 'none';            form.elements['nome'].value;         
}
if (tipo=="cognome") {           
document.getElementById("variabile1").style.display = 'block';           
} else {           
document.getElementById("variabile1").style.display = 'none';            form.elements['cognome'].value;         
}

}

ora il mio problema è creare l'Emails Templates:
ho messo:
Codice: [Seleziona]
Inserimento: {inserimento}
nome inserito: {nome}
cognome inserito: {cognome}
 
vorrei che comparisse o il nome o il cognome in base alla scelta dell'inserimento.

grazie
« Ultima modifica: 10 Nov 2010, 15:25:37 da vales »

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:form a geometria variabile
« Risposta #1 il: 08 Nov 2010, 00:20:08 »
Ho inserito alcune modifiche:

Form HTML ho aggiunto il tasto submit

Codice: [Seleziona]
<div class="form_item">
  <div class="form_element cf_dropdown">
    <label class="cf_label" style="width: 150px;">Inserire</label>
    <select class="cf_inputbox" id="select_0" size="1" title=""  name="inserimento" onChange="updatethis(this.form);">
    <option value="">Choose Option</option>
      <option value="nome">nome</option>
<option value="cognome">cognome</option>

    </select>
   
  </div>
  <div class="cfclear">&nbsp;</div>
</div>

<div id="variabile" style="display: none;">

<div class="form_item">
  <div class="form_element cf_textbox">
    <label class="cf_label" style="width: 150px;">nome</label>
    <input class="cf_inputbox" maxlength="150" size="30" title="" id="text_3" name="nome" type="text" onChange="updatethis(this.form);" />
 
  </div>
  <div class="cfclear">&nbsp;</div>
</div>
</div>
<div id="variabile1" style="display: none;">
<div class="form_item">
  <div class="form_element cf_textbox">
    <label class="cf_label" style="width: 150px;">cognome</label>
    <input class="cf_inputbox" maxlength="150" size="30" title="" id="text_4" name="cognome" type="text" onChange="updatethis(this.form);"/>
 
  </div>
  <div class="cfclear">&nbsp;</div>
</div>

</div>

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


Form Javascript ho aggiunto l'assegnazione del valore nullo quando nome o cognome non sono selezionati.

Codice: [Seleziona]
function updatethis(form) {     
var tipo=form.elements['inserimento'].value;   
   
if (tipo=="nome") {           
document.getElementById("variabile").style.display = 'block';           
} else {           
document.getElementById("variabile").style.display = 'none';
form.elements['nome'].value="";         
}
if (tipo=="cognome") {           
document.getElementById("variabile1").style.display = 'block';           
} else {           
document.getElementById("variabile1").style.display = 'none';            form.elements['cognome'].value="";         
}

}

Template email ho inserito il codice php per selezionare i testi da visualizzare.

Codice: [Seleziona]
<p><code class="bbc_code">Inserimento: {inserimento} <br />
<?php if (JRequest::getVar('nome','','post')<>'') { ?>
nome inserito: {nome} <br />
<?php 
if (
JRequest::getVar('cognome','','post')<>'') { ?>

cognome inserito: {cognome}</code></p>
<?php ?>

Ovviamente ho attivato l'invio dell'email e l'ho configurata in Setup emails.

Per poter inserire il codice php nel template email ho disabilitato l'editor nel tendina grigia che si apre quando si opera in Setup email.

Verificato e funziona tutto.

Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org

Offline Giaxx

  • Appassionato
  • ***
  • Post: 205
    • Mostra profilo
Re:form a geometria variabile
« Risposta #2 il: 10 Nov 2010, 11:17:02 »
grazie vales

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:form a geometria variabile
« Risposta #3 il: 10 Nov 2010, 15:25:02 »
Metto io risolto.
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org

 



Web Design Bolzano Kreatif