How to set default value in a Touch UI select element?

andrew_bowles

02-11-2015

I am trying to set the defaultValue in a Touch UI select dropdown. Setting "defaultValue" in dialog.xml works in Classic mode, but not in Touch. Here is the relevant snippet from my component's .content.xml <alignment jcr:primaryType="cq:Widget" sling:resourceType="granite/ui/components/foundation/form/select" fieldLabel="Alignment" name="./alignment" value="option2" defaultValue="option2"> <items jcr:primaryType="cq:WidgetCollection"> <topLeft jcr:primaryType="nt:unstructured" text="Option 1" value="option1"/> <topCenter jcr:primaryType="nt:unstructured" text="Option 2" value="option2"/> <topRight jcr:primaryType="nt:unstructured" text="Option3" value="option3"/> </items> </alignment>

Accepted Solutions (1)

Accepted Solutions (1)

Answers (10)

Answers (10)

darakhshan_shei

24-02-2016

Andrew Bowles wrote...

I am making the change directly in the component's .content.xml, but selected="{Boolean}true" hasn't worked either. It seems to always default to the first option.

 


Did you get a solution for this ? selected = true (as a boolean property) doesnt work. If you have some other solution plz share.

andrew_bowles

09-11-2015

I am making the change directly in the component's .content.xml, but selected="{Boolean}true" hasn't worked either. It seems to always default to the first option.

andrew_bowles

02-11-2015

I've added selected="true" to the second value in the dropdown, but the first value is still selected by default.

<horizontal jcr:primaryType="cq:Widget" sling:resourceType="granite/ui/components/foundation/form/select" fieldLabel="Horizontal Alignment" name="./halign"> <items jcr:primaryType="cq:WidgetCollection"> <topLeft jcr:primaryType="nt:unstructured" text="Left" value="hleft"/> <topCenter jcr:primaryType="nt:unstructured" text="Center" value="hcenter" selected="true"/> <topRight jcr:primaryType="nt:unstructured" text="Right" value="hright"/> </items> </horizontal>

bsloki

MVP

02-11-2015

defaultValue doesnt work in Touch UI.

If you want Option 2 be set as defaultValue. try using this 

 

  1. <alignment
  2. jcr:primaryType="cq:Widget"
  3. sling:resourceType="granite/ui/components/foundation/form/select"
  4. fieldLabel="Alignment"
  5. name="./alignment"
  6. value="option2"
  7. defaultValue="option2">
  8. <items jcr:primaryType="cq:WidgetCollection">
  9. <topLeft
  10. jcr:primaryType="nt:unstructured"
  11. text="Option 1"
  12. value="option1"/>
  13. <topCenter
  14. jcr:primaryType="nt:unstructured"
  15. text="Option 2"
  16. value="option2"
  17. selected="true"/>
  18. <topRight
  19. jcr:primaryType="nt:unstructured"
  20. text="Option3"
  21. value="option3"/>
  22. </items>
  23. </alignment>