次のような HTML フォームがあります。
<form class="form-horizontal" id="create_user" method="POST" action="#" accept-charset="UTF-8">
    <span>Username</span><input required="true" type="text" name="username" id="username">
    <span>E-mail</span><input type="email" name="email" id="email">
    <span>Privileges</span><select id="role" name="role"><option value="1">Administrator</option><option value="2">Employee</option><option value="3">Dealer</option></select>
    <span>Password</span><input type="password" name="password" id="password">
    <span>Repeat Password</span><input type="password" name="repeat_password" id="repat_password">
    <input class="btn-primary btn" type="submit" value="Submit">
    <input class="btn-inverse btn" type="reset" value="Reset">
</form>
次のように、AJAXを使用してサーバーにデータを送信しようとしています:
$("form").submit(function(){
            var form_data = $(this).serialize();
            var request = $.ajax({
                url: "user/validate",
                type: "POST",
                data: form_data 
            });
            request.done(function (response, textStatus, jqXHR){
                alert(response);//Comes back blank
            })
            // callback handler that will be called on failure
            request.fail(function (jqXHR, textStatus, errorThrown){
                // log the error to the console
                console.error(
                    "The following error occured: "+
                    textStatus, errorThrown
                );
            });
        });
編集: POST データを処理する Laravel コントローラーは次のとおりです。
class User_Controller extends Base_Controller {
    public function post_validate() {
        return Input::get('username');
    }
}
ただし、 を使用してデータは送信されません$(this).serialize()。次のようにして各要素を個別に渡すと、正常に$("#username").val()動作します。すべてのフォーム入力に名前があることを確認しましたが、それでも機能しませんでした。