php - document.getElementById ('form_name' ).submit() 无法正常工作

标签 php javascript html

好的,我会尽我所能提供最详细的信息。

该站点不适用于 IE6。如果它可以与 IE8 和 Chrome 一起使用,那就太好了,但这可以稍后完成。

该站点使用 PHP。提交位于另一个 PHP 文件中的表单,该文件包含在 DIV 标记内的 index.php 上的位置。

如果我单独打开表单,提交工作正常,但是当我尝试在索引页面上提交时,Firefox 错误控制台显示文档未定义。表单代码通过 PHP 逐行回显。保存用户名和密码的文本字段,表单代码如下:

<form id="entrar" action="entrar.php" method="post" onsubmit="javascript:checkvalues();">
  <a href="javascript:document.getElementById('entrar').submit();">ENTRAR</a>
</form>

有什么大不了的?我在这里错过了什么?我知道这很愚蠢,但我想不通。

最佳答案

在 jQuery 回答之前。

<form id="entrar" action="entrar.php" method="post" onsubmit="javascript:checkvalues();">
  <a id="entrar-link" href="#">ENTRAR</a>
</form>

<script>
(function() {
var entrar = document.getElementById('entrar'),
link = document.getElementById('entrar-link');

link.onclick=function() {  entrar.submit() }

})();
</script>

底线是不要使用href 来执行javascript。以不引人注意的方式进行(在脚本元素内)。确保 script 出现在标记之后,或者如果您打算将它放在头部,则使函数在窗口加载/dom 准备就绪时调用。

虽然我真的不知道你为什么这么做:

<input type=submit value=go>

除非你这样做是为了某种奇怪的风格目的,如果你不确定如何正确设置提交的样式,你也可以使用 input type=image

关于php - document.getElementById ('form_name' ).submit() 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3033106/

相关文章:

php - 如果类别 ID 为 in_array (Wordpress),则将标志值设置为 "0"

javascript - 如何升级我的 createElement 函数,使样式标签内的属性和值可以以对象而非字符串的形式编写?

javascript - 如何在 onfocus() 上打开 HTML 选择标签的选项列表

javascript - 仅允许输入类型 ="number"中的 0-9 数字(不包括 eE.+- 等..)

php - 共享主机上的 html5 websockets 阻塞其他端口

php - 获取随机行以及另一个表中的匹配行?

javascript - 使用 F5 刷新页面时抛出受污染的 Canvas 错误

javascript - 无法将 javascript 链接到 html 文件?

javascript - 从 tumblr 获取一张随机图片

php - 使用 session 变量从 mysql 服务器调用数据