【发布时间】:2013-06-21 08:15:57
【问题描述】:
我正在研究一个有点冗长的程序。该程序几乎可以完美运行,除了一件事:当我在文本框中单击时按 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 时,参数名称会附加到查询字符串中。这是应有的行为。我想问题是,你想做什么?
-
@atbebtg,谢谢。我没有设置方法或操作,因为我正在制作一个 AJAX 应用程序,据我所知,它不适用于这些参数。到目前为止,我能够解决这个问题的唯一方法是删除
<form>标记,但我觉得因为它是一种我仍然应该使用它的表单。 -
如果您要使用 ajax 提交数据,请查看以下帖子。您可以禁止提交表单stackoverflow.com/questions/895171/…
-
@atbebtg,效果很好。非常感谢。
-
我可以将其发布为答案并让您将其标记为正确答案吗?