2016-03-31 16 views
1

このトピックをたくさん検索して、さまざまな回答を得ましたが、どれも私のために働いていません。jQueryでページをリロードした後に成功メッセージをフェードインまたはフェードアウトする方法は?

私はフォームが正常に送信されると、ページをリロードします。

$('form').on('submit', function(event){ 
if($('#input').val() == 0){ 
    alert("Please insert your name"); 
    event.preventDefault(); 
    } 
} 

ここで、正常に送信されるたびに、成功メッセージが上にスライドし、2秒間そこにとどまってからフェードアウトします。

私はこれを試しましたが、ページがリロードされた後には残りません。

else{ 
    $('.success_message').fadeIn(1500); 
    } 

純粋なjQueryで可能ですか?

また、私はページをリロードする方法を探していません。フォームは、フォームを送信した後に自動的にリロードされます。値がlocalStorageに存在するかどうかを確認そして

$('form').on('submit', function(event) { 
    if ($('#input').val() == 0){ 
    alert("Please insert your name"); 
    event.preventDefault(); 
    } 
    localStorage.fadeInSuccessMessage = "1" 
}); 

:フォームを送信した後

+1

あなたはAjaxを経由して、フォームを送信しない場合は、バックエンドの言語での成功メッセージを印刷する必要があります。 –

+0

はい、しかし、それは動作しません、私はバックエンドの言語から成功メッセージを使用することはできません – Tom

+0

しかし、これは私がここにたくさん見てきました – Tom

答えて

3

は、成功メッセージがフェードインする必要があることを示すlocalStorageに値を設定します。そうならば、メッセージをフェードインとlocalStorageから値を削除します。

if ("fadeInSuccessMessage" in localStorage) { 
    $('.success_message').fadeIn(1500); 
    delete localStorage.fadeInSuccessMessage; 
} 
関連する問題