在聚合物中,我正在尝试手动提交表格。我的表格如下所示:
<form id="myForm" on-submit="{{ submitForm }}">
<input class="text" value="{{ someValue}}">
<button type="submit">Submit</button>
</form>
在聚合物对象中,我有:
submitForm: function(e) {
e.preventDefault();
}
每当我尝试执行以下操作时:
document.getElementById('myForm').submit();
表单完全忽略 on-submit 属性并将表单发布到新页面。
我正在为任何想知道我为什么要这样做的人构建一个屏幕键盘。每当有人按屏幕键盘上的 Enter 键时,我都需要提交表单。
有谁知道为什么会这样?
向您展示确切问题的 JSBin 示例(请参阅警报):http://jsbin.com/wadihija/2/
最佳答案
来自 MDN page关于 submit
:
The form's onsubmit event handler will not be triggered when invoking this method ... it is not guaranteed to be invoked by HTML user agents.
但是,调用
click
在 submit
类型按钮似乎工作。看这里:http://jsbin.com/tuxac/2/edit
这是对您的 jsbin 的修改,我相信它可以满足您的要求:
http://jsbin.com/wadihija/6/edit
关于forms - 聚合物 : manually submitting a form,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23151817/