Joomla.it Forum

Non solo Joomla... => Sviluppo => : saprile 28 Sep 2015, 10:49:37

: Nuovo custom type...[risolto]
: saprile 28 Sep 2015, 10:49:37
Buongiorno, ho la necessità di creare un nuovo "type field" per un mio modulo in joomla 3, ho seguito le indicazioni sulla documentazione al link: https://docs.joomla.org/Creating_a_custom_form_field_type (https://docs.joomla.org/Creating_a_custom_form_field_type), il nuovo tipo di campo funziona e il valore viene salvato correttamente (richiamato poi da $params->get('nome_campo_personalizzato')), ma essendo un menù a tendina, nelle opzioni del modulo non rimane selezionata la voce scelta. Quali parametri devo confrontare, nella select, per impostare l'opzione 'selected="selected"'?


publicfunction getInput(){return'<select id="'.$this->id.'" name="'.$this->name.'">'.'<option value="1" >New York</option>'.'<option value="2" >Chicago</option>'.'<option value="3" >San Francisco</option>'.'</select>';}


Grazie

: Re:Nuovo custom type...
: steganoga 28 Sep 2015, 16:47:15
https://www.ostraining.com/blog/how-tos/development/how-to-create-select-lists-in-joomla/

https://api.joomla.org/cms-3/classes/JHtmlSelect.html
: Re:Nuovo custom type...
: mmleoni 28 Sep 2015, 18:50:42
c'è qualcosa che non va nel tuo discorso... parli di un menù a tendina, quindi devi derivare la classe da JFormFieldList e non da JFormField, dopo di che ti consiglio di estendere il metodo getOptions() e lasciare la gestione di  getInput() a joomla

ciao
: Re:Nuovo custom type...
: saprile 29 Sep 2015, 16:02:06
Ciao Steganoga, grazie per il link segnalato, ma ho provato anche quel codice e il problema è esattamente lo stesso. Il valore inviato e memorizzato è giusto, quindi richiamando il valore con $params->get('nome_campo') è giusto. Ma se riapro le opzioni del modulo, il menù a tendina mi indica sempre la prima voce e non quella poco prima selezionata.
: Re:Nuovo custom type...
: saprile 29 Sep 2015, 16:04:44
Ciao mmleoni, ma le indicazioni le ho prese dalla documentazione ufficiale, https://docs.joomla.org/Creating_a_custom_form_field_type, in questo link si fa esplicito riferimento a JFormField e non a JFormFieldList.
: Re:Nuovo custom type...
: mmleoni 29 Sep 2015, 16:20:41
dalla pagina linkata:
"Especially if your form field type is a list, please subclass JFormFieldList. You only have to override getOptions() method to return the options to be shown"

la select è una list, quindi stai usando la classe sbagliata... fai come ti ho detto io che funziona  ;)

ciao
: Re:Nuovo custom type...
: saprile 29 Sep 2015, 17:56:16
Effettivamente si, ora funziona correttamente, grazie mmleoni!!!
: Re:Nuovo custom type...
: mmleoni 29 Sep 2015, 19:57:49
il [risolto] !!!
(nel titolo del post di apertura)

ciao