如果未指定操作,表单将提交到何处?

2022-08-30 11:30:56

这是让我感到困惑的形式

<h1>
    Login
</h1>
<form action="" method="post">
    <table align="left" border="0" cellspacing="0" cellpadding="3">
        <tr>
            <td>
                Username:
            </td>
            <td>
                <input type="text" name="user" maxlength="30">
            </td>
        </tr>
        <tr>
            <td>
                Password:
            </td>
            <td>
                <input type="password" name="pass" maxlength="30">
            </td>
        </tr>
        <tr>
            <td colspan="2" align="left">
                <input type="checkbox" name="remember">
                <font size="2">
                    Remember me next time
            </td>
        </tr>
        <tr>
            <td colspan="2" align="right">
                <input type="submit" name="sublogin" value="Login">
            </td>
        </tr>
        <tr>
            <td colspan="2" align="left">
                <a href="register.php">Join</a>
            </td>
        </tr>
    </table>
</form>

我从本教程中获得了代码,它工作正常,但是如果没有操作,我似乎无法理解a /表单提交的位置


答案 1

如果设置为 或缺少该属性,则表单将提交到其自身。也就是说,如果您的脚本是 ,则表单将提交到 。action""actionindex.phpindex.php


答案 2

如果表单的 action 属性设置为 OR 未指定,则仍将默认为 ,因此表单将发送到包含表单的文档的地址。""action="self"

所以

<form method="post">

<!-- IS THE SAME AS... -->

<form action="" method="post">

<!-- IS THE SAME AS... -->

<form action="self" method="post">

(试试吧)

有关参考,请参阅 HTML 标准 4.10.18.3 #8:

http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#form-submission-algorithm


推荐