我有一张<input type="submit"
的表单。在chrome提交中没有做任何事情。在开发人员工具的选项卡中的“网络”上,我什么都看不到。开发人员工具也没有错误。同时,如果我保存页面并打开已保存的页面,那么在按下提交按钮后,我会在“网络”选项卡中看到一些内容。这发生在chrome和firefox中。这在IE中可以正常工作。
有人有后见之明,我该怎么看?
编辑:我不需要直接回答,我只需知道,我应该在哪里看。如果有人发布指示并帮助我解决问题,我会接受它作为正确答案。EDIT2:页面结构如下所示:
html
head
body
div
div
form
form
form
form
form
input
input
table
table
tbody
tr..td..input type=submit
EDIT3:我们发现了实际问题,就是在一个页面中是一个包含href="#"
的链接,点击该链接后提交停止工作,因为#
被添加到了结尾URL并且因为表单的action
为空,所以它从当前URI中获取了URI,其中包含#
,因此浏览器没有提交,而是跳转到当前页面。
答案 0 :(得分:14)
您使用的是HTML5吗?如果是,请检查您的表单中是否包含<input type="hidden">
属性required
。删除required
属性。 Internet Explorer不会使用此属性,因此可以使用Chrome。
答案 1 :(得分:13)
如果您没有使用任何javascript / jquery进行表单验证,那么表单的简单布局将如下所示。
在你的html文档正文中:
<form action="formHandler.php" name="yourForm" id="theForm" method="post">
<input type="text" name="fname" id="fname" />
<input type="submit" value="submit"/>
</form>
您需要确保在表单标记中包含提交按钮,并指定了相应的操作。比如发送到php文件。
要获得更直接的答案,请提供您正在使用的代码。
您可以找到以下使用方法:http://www.w3.org/TR/html401/interact/forms.html
答案 2 :(得分:4)
检查您是否在页面上使用任何类型的jquery / javascript验证,并尝试禁用它,看看会发生什么。您可以使用浏览器的开发人员工具查看是否正在加载任何带有验证或验证的javascript文件。您还可以查找隐藏的表单元素(即。样式设置为display:none;或者类似的东西),并确保没有呈现的隐藏验证错误。
答案 3 :(得分:3)
我今天遇到了这个问题,问题是我在文件onclick中阻止了事件默认操作:
document.onclick = function(e) {
e.preventDefault();
}
文档onclick通常用于事件委托,但是防止每个事件的默认值都是错误的,你必须只对所需的元素执行:
document.onclick = function(e) {
if (e.target instanceof HTMLAnchorElement) e.preventDefault();
}
答案 4 :(得分:1)
我在朋友的HTML代码中碰到了这个问题,在他的情况下,他错过了引号。
例如:
<form action="formHandler.php" name="yourForm" id="theForm" method="post">
<input type="text" name="fname" id="fname" style="width:90;font-size:10>
<input type="submit" value="submit"/>
</form>
在此示例中,输入文本fname上的缺少引号将仅提示提交按钮不可用,并且表单将不会提交。
当然,这是一个不好的例子,因为我应该首先使用CSS;)但是无论如何,请检查所有单引号和双引号,看它们是否正常关闭。
此外,如果你有像中心这样的标签,请将它们移出表格。
<form action="formHandler.php" name="yourForm" id="theForm" method="post">
<center> <-- bad
看起来很奇怪,它可能会产生影响。
答案 5 :(得分:0)