Javascript 使用链接提交表单时维护按钮提交值

Javascript 使用链接提交表单时维护按钮提交值,javascript,forms,Javascript,Forms,我正在尝试创建一个提交表单的链接。我用这个,效果很好: <a name="submit" href="javascript:document.theForm.submit();" class="rollover-button gray small"><span>Send Message</span></a> 然而,我有一个问题。我以前的提交按钮是: <input type="submit" name="submit" value="Se

我正在尝试创建一个提交表单的链接。我用这个,效果很好:

<a name="submit" href="javascript:document.theForm.submit();" class="rollover-button gray small"><span>Send Message</span></a>

然而,我有一个问题。我以前的提交按钮是:

<input type="submit" name="submit" value="Send Message" />

单击此按钮时,我得到了一个$_POST['submit']值,我正在用我的php脚本中的isset检查该值,以查看表单是否已提交。但是,这不适用于我的提交链接。有人知道我怎么做吗

编辑:

我试过了,正如建议的那样:

<form action="." name="theForm" class="contactForm" method="post">

<input type="hidden" name="submit" value="Send Message" />

</form>

<a name="submit" href="javascript:document.theForm.submit();" class="rollover-button gray small"><span>Send Message</span></a>

但是仍然不起作用。

添加一个隐藏的输入

<input type="hidden" name="submit" value="Send Message" />


它对用户不可见,但将与表单内容一起发送。

您可以使用隐藏字段。因此,在提交表单时,可以检查隐藏元素是否存在

像这样:

<input type="hidden" name="submit" value="Send Message" />


这样,您可以在提交表单时检查$u POST['submit']。只需确保隐藏的元素位于元素内部,它将与表单的其余部分一起发布。

您可以创建隐藏的输入类型并检查其存在性:

if (isset($_POST['hiddenName'])) {....}

您可以始终隐藏提交按钮(使用css
display:none
)并使用JavaScript单击它:

document.forms.theForm.elements.submit.click();

-1-名为“submit”的表单控件将隐藏表单的submit方法,因此您无法调用它。@RobG您是对的。我回答时没有考虑所有的含意。但是,我的回答仍然有效,因为这不是OP所问的问题。OP应该将输入名称更改为name=“formsubmitted”,然后在其PHP代码中检查$u POST['formsubmitted']。从标记2中删除name=“submit”。将隐藏的输入重命名为name=“somethingelse”,并在PHP代码3中检查$u POST['somthingelse']。并在表单中添加action=“”,为什么不使用“提交”按钮?使用javascript替换内置浏览器功能是没有意义的。无论如何,调用表单控件“submit”会隐藏表单的submit方法,因此您无法调用它,即
文档。form.submit
引用按钮,而不是方法。这是因为我有一些我想要使用的样式,并且只与链接相关,而不与按钮相关。并非所有内容都与原始功能有关:)