如何知道用户在 <paper-dialog> 上选择了哪个按钮?

Posted

技术标签:

【中文标题】如何知道用户在 <paper-dialog> 上选择了哪个按钮?【英文标题】:How to know which button the user selected on <paper-dialog>? 【发布时间】:2014-11-06 03:33:46 【问题描述】:

鉴于我的模板的这个简化版本:

<template>
   <paper-dialog id='dialog_alert' heading="title">
     <p>alertText</p>
     <paper-button on-tap='btnAffirmative' label='Yes' affirmative autofocus></paper-button>
     <paper-button on-tap='btnNegative' label='No' dismissive></paper-button>
   </paper-dialog>
</template>

我无法找到如何在对话框关闭后查看用户选择的按钮。对话框本身似乎没有为它提供任何事件,所以我只是将“点击”事件连接到按钮上,这似乎有效。但是,当我使用这种方法时,点击后会弹出纸张按钮元素:

未捕获未捕获错误:

错误状态:控制器覆盖主机不是 Dart 聚合物元素。

当我取出“on-tap”挂钩时,也不例外,但我不知道用户按下了哪个按钮。我希望我忽略了文档中的一些明显内容。

我应该注意到,即使出现异常,程序仍然可以正常执行,所以我现在只是使用 on-tap 事件。

【问题讨论】:

【参考方案1】:

基本上你的方法看起来不错。 affirmativedismissive 属性只影响它们添加到对话框的位置 (see where and how it is used in the source)

我想这个错误是由 JS 聚合物元素的 Dart 包装器引起的。我会在http://github.com/dart-lang/paper-elements 创建一个错误报告。

您可以尝试 on-click 而不是 on-tap,因为 on-tap 是一个 polyfill 事件 - 只是为了确定。

【讨论】:

尝试了点击的想法。抛出相同的异常。我会尽快打开一个关于它的问题。

以上是关于如何知道用户在 <paper-dialog> 上选择了哪个按钮?的主要内容,如果未能解决你的问题,请参考以下文章

聚合物纸对话框背景不透明?

Paypal - 如何知道用户是不是不会在下个月支付订阅费?

脚本执行后如何保存用户在表单页面输入的数据?

如何在 <input> 元素内创建标签?

Struts2 + ibatis 框架,如何在一个页面里显示当前登录的用户?

脚本执行后如何保存用户在表单页面中输入的数据?