0

我想我发现了一个有趣的问题(至少对我来说)。我有一个表单,它使用点击表单内的 div 来提交。我已使用“document.forms.form.submit()”使 div 可点击以按照此处的建议提交this.form.submit() 在单击表单中的 div 元素后不起作用(感谢 David Hedlund!)

然而,该表单在 chrome 中运行良好,ff。但由于某些未知原因,在 chrome 上的 localhost 中运行表单现在无法正常工作。ff 工作正常。使问题变得有趣的是,当我将表单上传到网络服务器时,它可以在 chrome 中运行!知道为什么会在本地机器上发生这种情况吗?我正在使用 Xampp。

这是表格-

<form name="form" action="login_process.php" method="POST">
<div>
  Username: <input style="width:100px;" name="login_client[]" type="text" />
  Password: <input style="width:100px;" name="login_client[]" type="password" />
</div>

<div  align="right" class="whitearial12" style="position:absolute;  font-size:10px; width:360px; height:17px; right:110px; top:35px;">
  Forgotten your <a href="#">password</a>, or need to <a href="#">register</a>? 
</div>
<!-- this is the div !-->
<div onClick="document.forms.form.submit()" align="center" class="whitearial12" style="cursor: pointer; position:absolute; padding-top:3px; padding-bottom:-3px; width:80px; height:17px; right:20px; top:10px; background-image: url(Images/button_blank.png); background-repeat:no-repeat">
    Log In
</div>
</form>

更新:让我添加我进一步注意到的内容。此表单包含在另一个名为 header.php 的 php 文件的 index.php 文件中。我试过只运行 header.php。在这种情况下,表单在 chrome 中可以正常工作。但是在 index.php 中包含它是行不通的。

4

1 回答 1

0

我建议包括 jQuery 并重新设计以类似于此

<form id="MyForm" action="login_process.php" method="post">
    <span onclick="javascript:$('#MyForm').submit();">Magical ponies await</span>
</form>

使用 jquery 可以帮助解决跨浏览器的问题,但如果你不能这样做,怎么样

<form id="XX" action="login_process.php" method="post">
  <span onclick="javascript:document.getElementById('XX').submit();">AVAST</span>
</form>
于 2012-08-15T14:41:59.517 回答