为什么<form>单个<input>字段的a会在用户输入值并按下时重新加载表单Enter,如果?中有2个或更多字段则不会<form>.
我写了一个简单的页面来测试这种古怪.
如果您在第二个表单中输入一个值并按Enter键,您将看到它重新加载传递输入值的页面,就像您调用了一样GET.为什么?我该如何避免呢?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>testFormEnter</title>
</head>
<body>
<form>
<input type="text" name="partid2" id="partid2" />
<input type="text" name="partdesc" id="partdesc" />
</form>
<p>2 field form works fine</p>
<form>
<input type="text" name="partid" id="partid" />
</form>
<p>One field form reloads page when you press the Enter key why</p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 谁能解释这种行为?当表单包含单个文本框时,在HTML表单的文本框中按Enter键会提交表单,但在表单包含两个或更多文本框时则不会.
jsFiddle(一个输入):http://jsfiddle.net/gpPTa/jsFiddle
(两个输入):http://jsfiddle.net/fDbJt/
我对Vue很陌生,这将是我的第二个虚拟项目,旨在了解更多信息.
我目前有一个表单,我试图阻止表单提交,根据我可以做的文档v-on:submit.prevent.
我已将此添加到我的表单标签中,但在提交表单时,它仍然会通过并且根本没有被阻止.
我正在使用Vue版本2.1.3,以下是我到目前为止:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Node JS Server</title>
</head>
<body id="chat">
<form v-on:submit.prevent="send">
<input>
<button>Send</button>
</form>
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/1.6.0/socket.io.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.3/vue.min.js"></script>
<script>
var socket = io();
new Vue({
el: '#chat',
methods: {
send: function(e) {
alert('Send method!');
}
}
})
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?从文档中我可以看出,表格不应该提交.
编辑
这里是代码中的小提琴
一个非常简单的FORM和JS:
$('#gg').submit(function() {
alert('s');
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="gg" method="post">
<input name="languageId" type="text">
<input name="languageName" type="text">
</form>Run Code Online (Sandbox Code Playgroud)
.以某种方式按输入输入不会触发.submit.但如果我有一个输入,它确实有效!