1

私は jQuery の初心者で、モーダルを使用して、フォーム ジェネレーターによって生成された一定の連絡先の単純なフォームを表示しようとしています。jQuery.validate() を適用しましたが、検証は機能していますが、フォームを送信する方法がわかりません。タグに action="signup/index.php" がある場合、新しいページに着陸します。

生成されたフォームは action='signup/index.php' を使用し、このファイルは新しいページの場所を呼び出します Github のファイルを参照してください。これらの最後の行をコメントアウトしましたが、それでもフォームを送信できません。固定連絡先の電子メール リストに新しい電子メールが表示されません。

これは私の送信ハンドラーです

submitHandler: function() {
        $('#signup').click(function(e) {
            $.post('signup/index.php', $().serialize(), function(data) {
                $('#output-div').html(data);
            });
            $('#form-message').fadeIn(300, function() {
                $('#form-message').html('<p>Thank you for joining our list.  Great offers coming soon.</p>')
            });
            $('#myModal').delay(1500).trigger('reveal:close');
        });

    }
4

1 に答える 1

0

それを解決しました。

この行を含め、signup/index.php の最後の数行をコメントアウトしました。

if($postFields['request_type'] == 'ajax'){ $postFields["success_url"]=''; $postFields["failure_url"]=''; }

何らかの理由で、フォームの送信を成功させるにはその行が必要です。その行以降はすべてコメント アウトされています。

if ($return_code==201) {

</ol>
        </p>'; }
    }

私のjQueryはメッセージ、エラー、完了をそのまま処理しています

submitHandler: function() {
        $.post('/dev/rest/ccphp/signup/index.php', $("#ccsfg").serialize(), function(data) {
            $('#results').html(data);
        }).success(function() { 
            $('#ccsfg').html('<h4>Thank you for joining our list.  Great offers coming soon.</h4>');
        })
            .error(function() {
            $('#ccsfg').html('<h4>Oops!  There was an error.  Please try again. </h4>');
         })
            .complete(function() {
            $('#myModal').delay(1500).trigger('reveal:close');
         });
    }
于 2012-05-26T11:14:51.880 に答える