Javascript 如何使用PHP提交HTML表单?

Javascript 如何使用PHP提交HTML表单?,javascript,html,forms,Javascript,Html,Forms,这就是我试图做但没有成功的事情: <form name="something" action="ht.php" method="post"> <a href="#" onclick="document.url.submit('helloworld');">Submit</a> </form> 当我点击链接时,我想将值helloworld发布到ht.php。如何执行此操作?您可以在页面上添加一个隐藏字段(设置其名称属性),将其值设置为he

这就是我试图做但没有成功的事情:

<form name="something" action="ht.php" method="post">
   <a href="#" onclick="document.url.submit('helloworld');">Submit</a>
</form>


当我点击链接时,我想将值
helloworld
发布到
ht.php
。如何执行此操作?

您可以在页面上添加一个隐藏字段(设置其名称属性),将其值设置为helloworld

然后在超链接的onclick call form.submit()中尝试以下操作

<!-- you need to give some name to hidden value [index for post value] -->
<form name="something" action="ht.php" method="post">
    <input type="hidden" name="somename" value="helloworld" />
    <a href="javascript: document.something.submit();">Submit</a>
</form>

也试试这个

<!-- you need to give some name to hidden value [index for post value] -->
<!-- also you can use id to select the form -->
<form name="something" action="ht.php" method="post" id="myform">
    <input type="hidden" name="somename" value="helloworld" />
    <a href="javascript: document.getElementById('myform').submit();">Submit</a>
</form>

试试看


您不能只执行document.url.submit(),它不是那样工作的

试试这个:

<form id="myForm" action="ht.php" method="post">
    <input type="hidden" name="someName" value="helloworld" />
    <a href="#" onclick="document.getElementById('myForm').submit();">Submit</a>
</form>


那应该行

使用jQuery,它相当简单:

$('form .submit-link').on({
    click: function (event) {
        event.preventDefault();
        $(this).closest('form').submit();
    }
});
然后,您只需按正常方式编码,将类
提交链接
分配给表单提交链接:

<form action="script.php" method="post">
    <input type="text" name="textField" />
    <input type="hidden" name="hiddenField" value="foo" />
    <a href="#" class="submit-link">Submit</a>
</form>

我发现这个方法很有用,如果你想通过链接而不是传统的按钮在整个网站上维护一个美观的主题,因为没有内联脚本


,尽管它不会在任何地方提交。

奇怪的是,要么使用一个表单作为它的目标,要么$\u GETYour welcome!请记住,如果您进行用户交互,这可能是一种非常不安全的方式。隐藏值可以很容易地修改。@Flipper“非常不安全的方式”你是什么意思?@donvitto,如果你打算使用它让用户提交一些数据,那么用户只需复制你的HTML,为隐藏输入创建一个不同值的HTML文件。然后提交表单并提交不同的值。(或者使用Chrome浏览器,他们可以只使用开发人员工具。)确保您正在检查提交的数据是否完全符合您的要求,而不是其他内容。尤其是当您使用数据执行SQL查询时。@Flipper not im只是提交值,这完全没有数据文件,脚本没有连接到任何东西,所以应该是好的。:)感谢您的回复。不建议使用表单名称,因为它不遵循XHTML1.0标准。我还没有检查,但如果HTML5也不支持“name”格式,我也不会感到惊讶。所以,最好不要使用它。@Flipper也许我可以使用idID,但你根本不应该声明名称。它无法通过名为的XHTML验证。
<form action="script.php" method="post">
    <input type="text" name="textField" />
    <input type="hidden" name="hiddenField" value="foo" />
    <a href="#" class="submit-link">Submit</a>
</form>