paper-dropdown-menu默认选择选项不起作用

Hea*_*h N 5 polymer material-design

我的期望是,一旦页面加载,默认情况下将选择"选项1".这不是正在发生的事情.相反,它显示标签,而不是基于纸张项值属性的选定选项.

<paper-dropdown-menu name="dropdown" label="Dropdown" selected='1' valueattr='value'>
    <paper-dropdown class="dropdown">
        <core-menu class="menu">
            <paper-item value="1">Option 1</paper-item>
            <paper-item value="2">Option 2</paper-item>
        </core-menu>
    </paper-dropdown>
</paper-dropdown-menu>
Run Code Online (Sandbox Code Playgroud)

Jef*_*ick 7

selected属性可以与扩展的元素结合使用<core-selector>以控制所选内容.在您的示例中使用的元素集中,<core-menu>是扩展的元素<core-selector>,因此您需要在其上设置selected属性.

这是一个按预期工作的修改示例:

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Polymer Demo</title>
  </head>
  <body>
    <script src="//www.polymer-project.org/webcomponents.js"></script>
    <link rel="import" href="//www.polymer-project.org/components/paper-dropdown-menu/paper-dropdown-menu.html">
    <link rel="import" href="//www.polymer-project.org/components/paper-dropdown/paper-dropdown.html">
    <link rel="import" href="//www.polymer-project.org/components/core-menu/core-menu.html">
    <link rel="import" href="//www.polymer-project.org/components/paper-item/paper-item.html">
    
    <h1>Dropdown Menu</h1>
    <paper-dropdown-menu label="Select an item">
      <paper-dropdown class="dropdown">
        <core-menu class="menu" selected="1" valueattr="value">
          <paper-item value="1">Option 1</paper-item>
          <paper-item value="2">Option 2</paper-item>
        </core-menu>
      </paper-dropdown>
    </paper-dropdown-menu>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

请注意,您还需要设置valueattr="value"<core-menu>,以表明各的<core-menu>孩子有value属性有对应于什么都会到传递select属性.(默认值是valueattr="name"要求您name在每个<paper-item>s 上设置属性.)


Dav*_*las 6

这是Polymer 1.0的更新 paper-dropdown-menu

<paper-dropdown-menu label="Select an item" placeholder="Donut" >
  <paper-menu class="dropdown-content" selected="2" attr-for-selected="data-value">
    <paper-item data-value="1">Croissant</paper-item>
    <paper-item data-value="2">Donut</paper-item>
    <paper-item data-value="3">Financier</paper-item>
    <paper-item data-value="4">Madeleine</paper-item>
  </paper-menu>
</paper-dropdown-menu>
Run Code Online (Sandbox Code Playgroud)

  • 所以你必须明确设置占位符?聚合物杀了我. (2认同)
  • 对于v1.1.2,这已不再适用.我尝试了文档中的示例代码,但它不再有效.:( (2认同)