2016-09-27 59 views
-1

我想用div替換ajax中的消息的默認窗口,例如我想用div替換此代碼:alert(data.status + ": " + data.message);Ajax函數替換消息

這是我的Ajax代碼:

//Start ajax code 
       if(!url){ 
        url = jQuery('#product_addtocart_form').attr('action'); 
       } 
       url = url.replace("checkout/cart","ajax/index"); 
       var data = jQuery('#product_addtocart_form').serialize(); 
       data += '&isAjax=1'; 
       jQuery('#ajax_loader').show(); 
       try { 
        jQuery.ajax({ 
          url: url, 
          dataType: 'json', 
          type : 'post', 
          data: data, 
          success: function(data){ 
jQuery('.messages').remove(); 
           jQuery('#ajax_loader').hide(); 
           //alert(data.status + ": " + data.message); 



           if(jQuery('.header .links')){ 
            jQuery('.header .links').replaceWith(data.toplink); 
           } 

if(jQuery('.mini-cart')){ 
    jQuery('.mini-cart').replaceWith(data.sidebar); 
    var status = data.status; 

    showMessage(status.toLowerCase(), data.message); 
} 

// Create below function in your jquery 
function showMessage(txt, type) { 
    var html = '<div id="messages_product_view"><ul class="messages"><ul class="messages"><li class="'+type+'-msg"><ul><li>' + txt + '</li></ul></li></ul></div>'; 
    jQuery('.messages').update(html); 
} 



          } 
        }); 
       } catch (e) { 
       } 
//End ajax code 

在這段代碼,現在我有這樣的錯誤:

TypeError: jQuery(...).update is not a function 
jQuery('.messages').update(html); 
+2

什麼是更新函數,嘗試使用.html()。 jQuery('。messages')。html(html); –

+0

什麼是更新應該做的?這不是一個標準的jquery方法,那麼爲什麼你會期望它存在? – Liam

+0

嗨,可以使用HTML來代替更新,但

是空白我沒有任何數據 – Robert

回答

1

爲text/html設爲您可以使用這樣的元素...

var html = '<div id="messages_product_view"><ul class="messages"><ul class="messages"><li class="'+type+'-msg"><ul><li>' + txt + '</li></ul></li></ul></div>'; 
jQuery('.messages').html(html); 

使用的.html()函數,而不是.update()

+0

是好的,但

是空白的,我沒有任何數據 – Robert

+0

嘗試控制檯並查看showMessage函數是否正在調用,並在追加之前正確發送數據。 –

+0

我是begginer,我怎麼能做到這一點? – Robert

2

試試

$('#messages_product_view').append(html); 
+0

相同,這個div是空白的

Robert

+0

$('#messages_product_view')。append(html); –