javascript - 切换纸张按钮的禁用属性

标签 javascript polymer polymer-1.0

我有一个与多个paper-input字段/元素相关的paper-button(发送按钮)。 只要用户填写了所有相关的 paper-input 字段/元素(newEmail密码)。

这是元素的重要部分

  <gold-email-input id="newEmail"
                    label="Email"
                    no-label-float required>
  </gold-email-input>

  <paper-input id="passwd"
               type="password"
               label="Password"
               no-label-float required>
  </paper-input>

  <div class="buttons">
    <paper-button dialog-dismiss>Cancel</paper-button>
    <paper-button dialog-confirm autofocus
                  disabled$="[[isInputEmpty($$.newEmail.value, $$.passwd.value)]]"
                  on-tap="changeEmail"
                  class="default">Save</paper-button>
  </div>

当 newEmail.value 或 passdw 时,不会调用函数 disabled$="[[isInputEmpty($$.newEmail.value, $$.passwd.value)]]"。值变化。

这是 JavaScript 部分:

  isInputEmpty (email, pass) {
    if (email.length === 0 || pass.length === 0) return true;
    return false;
  }

truefalse之间切换属性disabled的正确实现是什么?

最佳答案

  1. disabled实际上是一个property of <paper-button> (不是属性),因此您不应该使用 attribute-binding syntax (即 $= )。

    <!-- don't do this -->
    <!--
    <paper-button disabled$="[[isInputEmpty(...)]]">
    -->
    
    <paper-button disabled="[[isInputEmpty(...)]]">
    
  2. 您正在尝试传递 newEmail 的值和passwd在您的绑定(bind)中,但您没有使用正确的语法。您必须将这些输入中的值绑定(bind)到您将在计算绑定(bind)中作为参数传递的属性:

    <gold-email-input value="{{email}}"></gold-email-input>
    <paper-input value="{{password}}"></paper-input>
    <paper-button disabled="[[isInputEmpty(email, password)]]"></paper-button>
    

关于javascript - 切换纸张按钮的禁用属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40174893/

相关文章:

javascript - 如何访问 JavaScript 事件回调函数中的变量?

使用 paper-dropdown-menu 时出现 JavaScript 错误

javascript - polymer 图标过渡

web - polymer 应用最佳实践

php - 在 php html javascript 中自定义 paypal 集成

javascript - 当我在特定表单元素上单击 "enter"时拒绝提交

java - Google App Engine 上的 Polymer - Java 服务器

javascript - 如何在Polymer 1.0中自动对焦/自动点击纸张输入?

javascript - 为什么这个 polymer 不以默认属性开头?

javascript - 在无法访问 HTML 的情况下禁用 "link"标记