0

フォームを送信できません。どこが間違っているのですか?

<div>
    <form id = "search_form" action = "/dashboard/" method = "post">
        <span class = "pull-right">
        Search : <input type = "text" placeholder = "Search" id = "search">
        </span>
    </form>
</div>

jQuery

$("#search_form").submit(function(event) {
    event.preventDefault();
    var formdata = $(this).serialize();
    alert(formdata);
    $.ajax({
        type: "POST",
        url: "gallery.php",
        data: formdata,
        success: function(){alert('success');}
    });
});

送信時に、フローは jQuery 関数に入りません。なんで?

4

2 に答える 2

2

フィールドに名前を付けていないSearchため、ファイルに値を渡していません。値が必要なためgallery.php、サーバー側のエラーが発生している可能性があります。

<div>
    <form id="search_form" action="/dashboard/" method="post">
        <span class="pull-right">
        Search : <input type="text" placeholder="Search" id="search" name="search">
        </span>
    </form>
</div>

フィールドに という名前を付けたことに注意してsearchください。PHP ファイルが POST データから受け取る変数名を確認し、それに応じて名前を付ける必要があります。

于 2013-11-04T12:22:24.670 に答える
1

試す:

$(function() {
    $("#search_form").submit(function(event) {
        event.preventDefault();
        var formdata = $(this).serialize();
        alert(formdata);
        $.ajax({
            type: "POST",
            url: "gallery.php",
            data: formdata,
            success: function(){alert('success');}
        });
    });
});

すべて正常に動作します: http://jsfiddle.net/J6e4G/

于 2013-11-04T12:29:47.787 に答える