1

我在 IE11 上遇到了问题。此代码在 Chrome/Firefox/Edge 中运行良好。我看不出我在做什么会导致它不起作用。

这是我的聚合物元素的影子 dom 正在破坏的部分:

  <template is="dom-if" if="[[showSelect]]]">
    <select value="{{selectValue::change}}">
      <option value="0" selected$="{{matchesDefault(0)}}">All</option>
      <template is="dom-repeat" items="{{excludeNumbers}}" as="number">
        <option value="[[number]]" selected$="[[isExclude(number)]]">Skip [[number]]s</option>
      </template>
    </select>
  </template>

我正在尝试做的事情是在 Chrome/FF/Edge 但不是 IE11 中工作:

  • 如果已设置,则显示 shadow dom <select>
  • 绑定 this.selectValue 以在下拉列表更改时更新。
  • 循环this.excludeNumbers并将它们写成<option>嵌套在 中<select>,如果它们是则选择它们

到目前为止我测试过的内容:

  • <option>标签 中删除所有属性
    • 结果:没有变化,仍然不渲染
  • <option value="0" selected$="{{matchesDefault(0)}}">All</option>从标记中 删除默认值
    • 结果:没有变化,仍然不渲染
  • <template is="dom-repeat">标记移到 之外<select>,就在<template>检查 is 的开始标记下方,[[showSelect]]并将它们从标记更改<option><span>标记。
    • 结果:成功写入 span 标签
  • 在构建的代码上运行polymer build和测试 IE10
    • 结果:没有变化

有人看到我有什么问题吗?关于我可以测试什么的任何想法?

任何想法表示赞赏

4

1 回答 1

1

这是一个已知问题,tables不适selects用于dome-repeatIE11 在Github here中打开了一个问题,没有有效的解决方案

一种解决方案是使用自定义元素,可能类似于paper-dropdown-menu

于 2018-08-23T07:49:36.983 回答