Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 含聚合物2.0的铁形态_Javascript_Polymer_Web Component_Iron Form - Fatal编程技术网

Javascript 含聚合物2.0的铁形态

Javascript 含聚合物2.0的铁形态,javascript,polymer,web-component,iron-form,Javascript,Polymer,Web Component,Iron Form,我有一个bug,我在jsbin中复制了这个bug: iron表单在提交serialize方法时返回的总是未定义的,并且它被调用了两次 <dom-module id="my-form"> <template> <iron-form id="myForm"> <form method="get" action="cenfdsas"> <input type="text" name="cenas">

我有一个bug,我在jsbin中复制了这个bug:

iron表单在提交serialize方法时返回的总是未定义的,并且它被调用了两次

 <dom-module id="my-form">
  <template>

    <iron-form id="myForm">
      <form method="get" action="cenfdsas">
        <input type="text" name="cenas">
        <button on-click="cenas">Submit</button>
      </form>
    </iron-form>

  </template>

  <script>
   class MyForm extends Polymer.Element {

      static get is() {
        return 'my-form';
      }

      connectedCallback() {
        super.connectedCallback();
        const form = this.$.myForm;
        form.addEventListener('iron-form-presubmit', function (event) {
          event.preventDefault();
          console.log("here")
          console.log(form.serialize());
        });
      }

      cenas() {
        this.$.myForm.submit();
      }

    }

    window.customElements.define(MyForm.is, MyForm);

  </script>
</dom-module>

提交
类MyForm扩展了Polymer.Element{
静态get是(){
返回“我的表格”;
}
connectedCallback(){
super.connectedCallback();
const form=this.$.myForm;
表单。addEventListener('iron-form-presubmit',函数(事件){
event.preventDefault();
console.log(“此处”)
log(form.serialize());
});
}
cenas(){
这是$.myForm.submit();
}
}
window.customElements.define(MyForm.is,MyForm);
更新 Polymer团队需要将方法的名称更改为serializeForm,因为他们有一个bug。资料来源:

但是我继续讨论提交事件,它被调用了两次 Bug-->

根据,在表单中使用标准的
元素将自动提交它

然后,您应该使用链接中建议的
,或者对
cenas()方法的内容进行注释