我正在开发一个有点长的程序。该程序几乎完美地工作,除了一件事:当我在文本框中单击时按 Enter 键时,它会自动清除该框并将数据附加到 URL,就像 GET 请求一样。我大大简化了这个程序,给出了这个:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Simple Version</title>
</head>
<body>
<form>
<input type="text" name="password"/>
</form>
</body>
</html>
这种情况发生在我尝试过的两台 Windows 7 计算机上,即 Chrome、IE 和 Firefox。
如果有人解释一种方法来防止这种情况,我将不胜感激。
最佳答案
表单的默认方法是 GET,当你按回车键时,表单就会被提交,因为你没有指定方法和操作,所以它是使用 GET 自行提交的。当表单使用 GET 时,参数名称将附加到查询字符串中。这是它应该有的行为。
如果您要使用 ajax 提交数据,请查看以下帖子。您可以禁止提交表单Prevent users from submitting a form by hitting Enter
关于HTML 文本输入框在 Enter 时被清除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17281990/