Polymer 如何在铁型聚合物中实现addEventListener

Polymer 如何在铁型聚合物中实现addEventListener,polymer,Polymer,如何在铁形态聚合物中实现addEventListener 我已经在遵循这个指南: 这是我的代码: <form is="iron-form" method="get" action="/" id="eventsDemo"> <paper-input name="name" label="Name" required auto-validate></paper-input> <paper-input name="password" label="Pa

如何在铁形态聚合物中实现addEventListener

我已经在遵循这个指南:

这是我的代码:

<form is="iron-form" method="get" action="/" id="eventsDemo">
  <paper-input name="name" label="Name" required auto-validate></paper-input>
  <paper-input name="password" label="Password" type="password" required auto-validate></paper-input>
  <paper-checkbox name="read" required>You must check this box</paper-checkbox><br>
  <paper-button raised onclick="_delayedSubmit(event)" disabled id="eventsDemoSubmit">
  <paper-spinner id="spinner" hidden></paper-spinner>Submit</paper-button>
  <paper-button raised onclick="_reset(event)">Reset</paper-button>
  <div class="output"></div>
</form>
<script>
  eventsDemo.addEventListener('change', function(event) {
    // Validate the entire form to see if we should enable the `Submit` button.
    eventsDemoSubmit.disabled = !eventsDemo.validate();
  });
  function _delayedSubmit(event) {
    spinner.active = true;
    spinner.hidden = false;
    eventsDemoSubmit.disabled = true;
    // Simulate a slow server response.
    setTimeout(function() {
      Polymer.dom(event).localTarget.parentElement.submit();
    }, 1000);
  }
  function _reset(event) {
    var form = Polymer.dom(event).localTarget.parentElement
    form.reset();
    form.querySelector('.output').innerHTML = '';
  }
  document.getElementById('eventsDemo').addEventListener('iron-form-submit', function(event) {
    spinner.active = false;
    spinner.hidden = true;
    eventsDemoSubmit.disabled = false;
    this.querySelector('.output').innerHTML = JSON.stringify(event.detail);
  });
</script>

eventsDemo
变量尚未在JS中声明。我看到您有一个带有
id=“eventsDemo”
的元素,但它不会自动声明变量以在
标记中使用

要通过元素标识符获取元素,可以在
中使用或:


这是HTML还是其他自定义元素?如果是后者,可以使用
var eventsDemo=document.getElementById('eventsDemo')
聚合物({is:'x-foo'})
)hi@tony19,当我尝试使用它时,eventsDemo是“null”并且现在错误变为“null”,我打赌它不是自定义元素“无法读取null的属性'addEventListener'”@monoysuronoy,您能提供一个演示(codepen、JSFIDLE、jsbin等)吗?感谢您的链接,但它仍然显示原始代码,而不是您尝试过的代码。是的,我们正在努力实现这一点。:)您声明:
当我尝试它时,eventsDemo是“null”“
,所以我想看看您尝试了什么。在代码上,当表单全部填写完毕时,必须启用“提交表单”按钮
Uncaught ReferenceError: eventsDemo is not defined
var eventsDemo = document.getElementById('eventsDemo');
var eventsDemo = document.querySelector('#eventsDemo');