0
 $("#form").submit(function() {
     $(this).ajaxSubmit({
         beforeSubmit: function(before) {
             $('.result').html('loading');
         },
         success: function(d) {
             //result process
         }
     }); 
     return false;
 });

送信ボタンをクリックすると、この機能は非常にうまく機能します。ただし、ボタンを押したときにフォームを送信したいと思います。上記の関数はサイドに書かれています

 $(document).ready(function() {

しかし、私はそれを通常のjavascript関数の中に書きたいと思っています。

フォームプラグインを使用しています。form.min.js

4

4 に答える 4

1

それでは、DOM 要素のクリック ハンドラーをサブスクライブします。

$(document).ready(function() {
    $('#myButton').click(function() {
        $("#form").ajaxSubmit(
            beforeSubmit: function(before) {
                $('.result').html('loading');
            },
            success: function(d) {
                //result process
            }
        );    
        return false;
    });
});
于 2012-10-19T07:41:06.607 に答える
0

あなたはほとんどすべてを手に入れました。document.ready 内でバインドするポイントは、dom を読み取る準備ができているポイントであり、dom 要素にイベントハンドラーをセットアップしても安全であることがわかっています。 「submitImageForm」のIDを持つボタンがあると仮定すると、コードはこのようなものをロックしています

$(function(){
  $("#submitImageForm").click(function(e){ // tell the browser we wanner handle the onClick event of this element
    e.preventDefault() // this is to tell the browser that we are going to handle things and it shod not do its default (e.g sending the form up to the server and reloading)

    $("#form").submit(function() {
      $(this).ajaxSubmit({
         beforeSubmit: function(before) {
             $('.result').html('loading');
         },
         success: function(d) {
         //result process
         }
     })

    })
  })
})
于 2012-10-19T07:51:04.390 に答える
0

これを試して

<form action='' method='post' onsubmit='return uploadimg();'>

<script>
function uploadimg(){
    $(this).ajaxSubmit({
     beforeSubmit: function(before) {
         $('.result').html('loading');
     },
     success: function(d) {
         //result process
     }
 });
 return false;
} 

</script>
于 2012-10-19T07:41:25.060 に答える
0
<button id="formSubmit">

formsubmit をボタン クリック イベントにバインドすると、次のように動作するはずです。

$('#formSubmit').on('click', function(){
    $('#form').ajaxSubmit({
         beforeSubmit: function(before) {
             $('.result').html('loading');
         },
         success: function(d) {
             //result process
         }
     }); 
     return false;
});
于 2012-10-19T07:41:48.080 に答える