1

クリックして ajax.form submit を使用してフォームが送信されません。解決策を教えてください

私のjsコードはここにあります

$(document).ready(function(){

$('#sortable li').click(function() {

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

});

HTMLはこちら

 <form method="post" enctype="multipart/form-data" id="frmgallery" name="gallery" action="<?php get_template_directory();?>admin.php?page=gallery/gallery.php">

<ul id="sortable">

Query

<li  class="ui-state-default" name='liindex' id="<?php echo $row['glryRecordId'];?>" >
<span style="display:none"><?php echo $row['glryRecordId'];?></span>
<img class='thumbnail' alt=''  src='<?php echo get_site_url();?>/wp-content/themes/townsley/upload/<?php echo $row['glryName']; ?>' width='80' height='60' 
 style="border: 1px solid #D3D3D3;padding:2px;"/><input type="hidden" value="<?php echo $row['glryRecordId'];?>" name="recordId[]" />
    <a href="<?php get_template_directory();?>admin.php?page=gallery/gallery.php&delid=<?php echo $row['glryRecordId'];?>" style="display:block;text-align:center"  title="DELETE this image from the record" class="arial-red">Remove</a>
</li>


</ul>
</form> 

助けてください ありがとう

ajax jquery javascript

4

4 に答える 4

2

eventあなたの質問にもHTMLを提供する必要がありますが、私が見る限り、イベントeventを開始するものは実際には何もありません。submitしたがって、基本的には次のようなものを検討する必要があります。

$(document).ready(function(){

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

});
于 2013-05-29T08:07:15.193 に答える
0
$("#frmgallery").ajaxForm({url: 'gallery.php', type: 'post'})

submit 関数の最後に return false を試しましたか?

    $("#frmgallery").submit(function(e) {
        e.preventDefault();
        var formdata = $(this).serialize();
        alert(formdata);
        $.ajax({
            type: "POST",
            url: "gallery.php",
            data: formdata,
            success: function(){alert('success');}
            error: function(){alert('error');}
        });
        return false;
    });
$('#sortable li').click(function() {

     $("#frmgallery").submit();
});
于 2013-10-28T06:44:45.540 に答える
0

Ajax Form Pluginの ajaxForm/ajaxSubmit 関数、または jQuery の serialize 関数を使用できます。

例:

$("#frmgallery").ajaxForm({url: 'gallery.php', type: 'post'})

また

$("#frmgallery").ajaxSubmit({url: 'gallery.php', type: 'post'})

ajaxForm送信ボタンを押すと送信されます。ajaxSubmitすぐに送信します。

于 2013-05-29T08:08:09.643 に答える