2015-08-26 1 views
3

Polymère 1.0: Comment obtenir la valeur de l'élément sélectionné dans un menu déroulant papier?Polymer 1.0: Comment puis-je obtenir la valeur de l'élément sélectionné dans un menu déroulant papier?

Je soumets quelques informations avec iron-ajax et je ne peux pas la valeur (je ne veux pas l'étiquette) du menu déroulant papier. L'identifiant de mon menu déroulant papier est 'mymenu'. Je l'ai essayé ces:

this.$.mymenu.selectedItem.value 
+0

en dehors du polymère, en liaison normale JS et chercher ..... e.currentTarget._selection.selection [0]. $ YourAttrVals –

+0

Mais je veux le faire en utilisant un polymère. Sûrement le moyen d'obtenir la valeur – Gilberg

+0

essayez le débogueur pour le comprendre vous-même .. c'est ce que j'ai fait ma première fois avec les sélecteurs et avec la liste de fer –

Répondre

15

Si vous définissez la valeur dans l'attribut value, les éléments suivants devraient fonctionner:

this.$.mymenu.selectedItem.getAttribute("value") 

Mise à jour

Pour une approche déclarative, vous pouvez définir attr-for-selected="value" puis liez à l'attribut selected.

<paper-dropdown-menu label="Your favourite pastry"> 
    <paper-menu attr-for-selected="value" selected="{{selection}}" class="dropdown-content"> 
     <paper-item value="croissant">Croissant</paper-item> 
     <paper-item value="donut">Donut</paper-item> 
     <paper-item value="madeleine">Madeleine</paper-item> 
    </paper-menu> 
</paper-dropdown-menu> 
<div>[[selection]]</div> 
+2

Jetez un oeil à ma réponse mise à jour. – Maria

+0

Est-ce que c'est juste moi, ou est-ce que la présélection ne fonctionne pas avec cette solution? Par exemple si vous ajoutez une propriété appelée sélection et lui donnez une valeur de départ de "donut" - le menu déroulant s'affichera vide jusqu'à ce qu'une valeur soit sélectionnée manuellement, au lieu d'afficher l'étiquette "Donut". – Inrego

+0

@Inrego Preselect fonctionne pour moi avec cette approche. Je l'ai testé dans ce [plunk] (http://plnkr.co/edit/PbLbqWlTFmUp8vjI2g9e?p=preview) – Maria