创建 MDL 表时,其中一个选项是应用“mdl-data-table--selectable”类。当 MDL 呈现表格时,会在指定列的左侧插入一个额外的列,其中包含允许您选择特定行以进行操作的复选框。对于我的应用程序,当有人选中或取消选中某个框时,我需要能够处理一些 JavaScript。到目前为止,我一直无法做到这一点。
问题是您没有直接指定复选框控件,它们是在 MDL 升级整个表格时插入的。对于其他 MDL 组件,例如按钮,我可以在按钮本身上放置一个 onclick 事件,因为我使用 HTML 按钮标记指定它。
尝试将 onclick 放在为呈现复选框而创建的各种容器对象和跨度上未成功。我附加的事件似乎没有触发。我最接近的是将事件附加到 TR,然后遍历复选框以评估它们的状态。
这是 MDL 为单个复选框单元格生成的标记:
<td>
<label class="mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect mdl-data-table__select mdl-js-ripple-effect--ignore-events is-upgraded" data-upgraded=",MaterialCheckbox">
<input type="checkbox" class="mdl-checkbox__input">
<span class="mdl-checkbox__focus-helper"></span>
<span class="mdl-checkbox__box-outline">
<span class="mdl-checkbox__tick-outline"></span>
</span>
<span class="mdl-checkbox__ripple-container mdl-js-ripple-effect mdl-ripple--center">
<span class="mdl-ripple"></span>
</span>
</label>
</td>
我没有指定这些标记,因此我不能简单地将 onclick 属性添加到标签。
如果有我可以挂钩的事件链?我想按照编码员的意图去做。