当焦点在纸质输入中时,使用 Enter 提交铁表单不起作用



请考虑以下视图:

<link rel="import" href="../bower_components/polymer/polymer-element.html">
<link rel="import" href="shared-styles.html">
<link rel="import" href="../bower_components/paper-input/paper-input.html">
<link rel="import" href="../bower_components/paper-button/paper-button.html">
<link rel="import" href="../bower_components/iron-form/iron-form.html">
<dom-module id="my-view1">
<template>
<style include="shared-styles">
:host {
display: block;
padding: 10px;
}
</style>
<div class="card">
<div class="circle">1</div>
<h1>View One</h1>
<iron-form id="loginForm">
<form action="/" method="POST">
<label>From here it works:</label>
<input type="text" id="name" name="user_name">
<paper-input id="uid" label="Username" type="text" required auto-validate></paper-input>
<paper-input id="pwd" label="Password" type="password" required auto-validate></paper-input>
<button type="submit" class="no-style">Submit</button>
</form>
</iron-form>
</div>
</template>
<script>
class MyView1 extends Polymer.Element {
static get is() { return 'my-view1'; }
}
window.customElements.define(MyView1.is, MyView1);
</script>
</dom-module>

当焦点处于<input>时,按 Enter 将提交表单。当焦点在<paper-input>时,它不会。

这曾经在聚合物 1 中工作正常。

有什么变化吗?

谢谢。

同时,在修复此浏览器特定错误的同时,您可以添加一个 onkeyup 事件并调用一个在用户按 Enter 时发送表单的方法。

<paper-input on-keyup="postForm" label="username" value="{{username::input}}">

并且该函数应如下所示。

postform: function(event) {
var enter = 13;
if (event.keyCode === enter) {
// code to post form
}
}

最新更新