0

これまでさまざまなウェブサイトでこれを頻繁に行ってきましたが、今は機能しません。送信ボタンを使用して完全に適切に投稿する単純なフォームがありますが、特定の理由により、代わりに URL リンクを介して送信する必要があります。を使用してsubmit()います。フォームは送信されますが、データは送信されません。
私は何が欠けていますか?

<html>
<body>
<?
if(isset($_POST['bar'])) { echo 'testing button<br>'; }
if(isset($_POST['information'])) { 
    echo $_POST['information'];
    echo '</br>Info successfully posted.'; 
    }
?>

    <form action="test.php" method="post" id="fooform"> 
        Hello World.<br>
        Select checkbox: <input type="checkbox" id="information" name="information" value="yes">
        <input type="submit" name="bar" value="Send"><br>
        <a href="test.php" onclick="SubmitForm('fooform');">Confirm and Post</a><br>
        <a href="test.php" onclick="this.form.submit();">Post Directly </a>
    </form>

    <script type="text/javascript">
        function SubmitForm(formId) {
            var oForm = document.getElementById(formId);
            alert("Submitting");
            if (oForm) { oForm.submit(); }
            else { alert("DEBUG - could not find element " + formId); }
            }
    </script>
</body>
</html>
4

3 に答える 3

3

フォームの送信が開始されhref、リンクの がたどられ、フォームの送信がキャンセルされます。

古いスタイルのonclick属性を使用している場合return false;は、最後にデフォルトのアクションを防止します。

ただし、送信ボタンを使用した方がよいでしょう (フォーム送信しています)。CSS を使用して外観を変更できます。

于 2013-09-30T10:08:40.617 に答える
-1

jqueryでフォームIDでフォームを送信してみてください

<a class="submit">Post Directly </a>

$('a.submit').click(function(){

   $('#fooform').submit();
}) 
于 2013-09-30T10:01:20.507 に答える