2012-09-06 13 views
6

Ho seguito le procedure di base per ottenere il valore selezionato del modulo per il pulsante di scelta.(extjs) Ottieni il valore selezionato del pulsante di opzione nel modulo. Non si restituisce il valore

 .... 
     xtype: 'radiofield', 
     name: 'timespan', 
     id: 'timespan', 
     value: 7, 
     checked: true, 
     fieldLabel: 'Time Span', 
     boxLabel: '7 days' 
    }, { 
     xtype: 'radiofield', 
     name: 'timespan', 
     value: '30', 
     fieldLabel: '', 
     labelSeparator: '', 
     hideEmptyLabel: false, 
     boxLabel: '30 days' 
    }, { 
     xtype: 'radiofield', 
     name: 'timespan', 
     value: '60', 
     fieldLabel: '', 
     labelSeparator: '', 
     hideEmptyLabel: false, 
     boxLabel: '60 days' 
    }, { 
     xtype: 'radiofield', 
     name: 'timespan', 
     value: 'all', 
     fieldLabel: '', 
     labelSeparator: '', 
     hideEmptyLabel: false, 
     boxLabel: 'All' .... 

ho usato metodi come:

Ext.getCmp('filter_form').getForm().getValues()['timespan'] 

Ma quando ho eseguito questo alla console, invece di ottenere il valore del pulsante selezionato, ottengo la parola on. Cosa dà ?! Ho provato diverse combinazioni di getValues, getForm, ecc, ma finisco sempre con on o true o false. Cosa sta succedendo qui?

risposta

3

figured it out! Risulta che il mio codice di esempio extjs ha un errore!

Ho cambiato value in inputValue. Tratto da Sencha Documenti, inputValue è:

Il valore che deve andare in valore attributo dell'elemento ingresso generato e dovrebbe essere usato come valore del parametro quando presenta come parte di un modulo. Per impostazione predefinita: 'on'

Aha !! Poiché non avevo specificato un valore "reale", per impostazione predefinita era on.

Fare attenzione quando si utilizzano gli esempi extjs/codice di esempio!

4

provare l'impostazione inputValue proprietà della radio. Qual è il valore che dovrebbe essere inserito nell'attributo del valore dell'elemento di input generato e deve essere utilizzato come valore del parametro quando si invia come parte di un modulo.

{ 
     xtype   : 'radiofield', 
     name   : 'timespan', 
     inputValue  : '30', 
     hideEmptyLabel : false, 
     boxLabel  : '30 days' 
} 

allora si può accedere come

Ext.ComponentQuery.query('[name=timespan]')[0].getGroupValue(); 

riferiscono docsgetGroupValue

+0

getGroupValue() non stava leggendo per me. Non è stato riconosciuto. Ho trovato una soluzione alternativa senza usare getGroupValue(). Grazie! – hereiam

Problemi correlati