2011-08-02 5 views

答えて

0

をあなたはAJAXを使用していけない理由はフォームが提出されている間、進行状況インジケータを表示したい場合は?

$("form").submit(function(e) { 
    e.preventDefault(); 

$(".loading").show();//Assuming you have a container which has appropriate style and image to show the loading image 

    $.post({ 
     url: $(this).attr("action"), 
     data: $(this).serialize(), 
     success: function(){ 
      $(".loading").show(); 
      //Write code here to handle on success 

     } 
    }); 
}); 
+0

私は、フォームの名前を変更して、適切にdivを操作してみました。上記のコードでは、フォームはもう送信されません。 – cstrouse

+0

$(this).actionはundefですが、$(this).attr( "action")に変更すると少なくとも定義されます。ただし、成功ブロックには何も起こりません。 – cstrouse

+0

@cstrouse - 今すぐお試しください私は私の答えを編集しました。 – ShankarSangoli

0

これは簡単です。 「loadingImgは、」あなたがIDを使用してページ上のどこかに隠されたスピナー/ロードイメージを持っていると仮定すると:

$("form").submit(function() { 
    $("#loadingImg").show(); 
}); 

デモ:http://jsfiddle.net/yFaAj/1/

+0

これは1秒間点滅してから消えます。その後、ページが読み込まれます。 – cstrouse

+0

それはまさにそのアイデアです。スピナーは、ページが更新されるまで残ります。 – karim79

+0

はい、ページが完全に読み込まれるまで、スピナーを実行する必要があります。何が起こるかは、スピナーを消して欲しい前に、多くのカールコールや実行する必要のあるものがあるということです。 – cstrouse

関連する問題