2017-01-15 10 views
1

私のJSコードに問題があります。それを調べて何が間違っているのかを考えてください。js .html()通知ウィンドウが最初に正常に終了した後に消えます

私のHTMLページには、「div」があります<div id="notification"></div> この「div」は、PHPコードの後に​​来る可能性のある別の種類の通知を表示したい場所です(「myphppage.php」など)。成功した

<div class="cycle"> 
    <input value="Add to Cart" onclick="addToCart('828');" class="button" type="button"> 
</div> 

ここでは、ボタンのonclickの後にトリガされるjavascriptです:

function addToCart(quantity) { 

$.ajax({ 
    url: 'myphppage.php', 
    type: 'post', 
    data: '&quantity=' + quantity, 
    dataType: 'html', 
    success: function(html) { 

    if (html == 'success') { 

     $('#notification').html('Success: Book added in your cart.' + '<img src="/img/close.png" class="close" />').show(); 

     $('#notification').addClass('success'); 

     $('.success').fadeIn('slow'); 

    } 
    } 
}) 
} 

PHPコードのエコー「成功」した後#notificationは、Webページではなく、その後に適切に示されていますPHPコードがバックグラウンドで正常に実行されているにも関わらず、[カートに追加]ボタンのヒットが表示され、PHPコードに「成功」​​と表示されます。

回避策として、ウェブページを更新すると、もう一度機能し、次回からは消えます。

+0

ウェブページ上でクリックするたびにトリガーされるonClickに基づいて送信イベントを追加しました – team

+0

完全なaddToCartをチョイスしてください – mplungjan

+0

私はこのフォーマットに少し新しくなっています。それは今理解に役立つのでしょうか? – team

答えて

0

#notificationには、非表示にするとインラインCSS display: none;が必要です。次に次回に.show()を使用すると動作しません。
と同じことをして、.show()を削除してみてください。

関連する問題