2013-08-16 82 views
2

進行檢驗驗證時遇到的問題是,在「分配方法」一節中,阿賈克斯未能驗證某種原因。哪裏是在Opencart的

在下面的代碼(從結帳/ checkout.tpl),則BeforeSend和完整功能被髮射了,但在成功的功能不點火關閉。

誰能告訴我在哪裏 '的index.php?路徑=結賬/ SHIPPING_METHOD /驗證' 設置?

謝謝

$('#button-shipping-method').live('click', function() { 
    $.ajax({ 
     url: 'index.php?route=checkout/shipping_method/validate', 
     type: 'post', 
     data: $('#shipping-method input[type=\'radio\']:checked, #shipping-method textarea'), 
     dataType: 'json', 
     beforeSend: function() { 
     $('#button-shipping-method').attr('disabled', true); 
     $('#button-shipping-method').after('<span class="wait">&nbsp;<img src="catalog/view/theme/default/image/loading.gif" alt="" /></span>'); 
     }, 
     complete: function() { 
     $('#button-shipping-method').attr('disabled', false); 
     $('.wait').remove(); 
     },   
     success: function(json) { 
     $('.warning, .error').remove(); 

     if (json['redirect']) { 
      location = json['redirect']; 
     } else if (json['error']) { 
      if (json['error']['warning']) { 
       $('#shipping-method .checkout-content').prepend('<div class="warning" style="display: none;">' + json['error']['warning'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>'); 

       $('.warning').fadeIn('slow'); 
      }   
     } else { 
      $.ajax({ 
       url: 'index.php?route=checkout/payment_method', 
       dataType: 'html', 
       success: function(html) { 
        $('#payment-method .checkout-content').html(html); 

        $('#shipping-method .checkout-content').slideUp('slow'); 

        $('#payment-method .checkout-content').slideDown('slow'); 

        $('#shipping-method .checkout-heading a').remove(); 
        $('#payment-method .checkout-heading a').remove(); 

        $('#shipping-method .checkout-heading').append('<a>Modify &raquo;</a>'); 

       }, 
       error: function(xhr, ajaxOptions, thrownError) { 
        alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); 
       } 
      });    
     } 
     }, 
     error: function(xhr, ajaxOptions, thrownError) { 
     alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); 
     } 
    }); 
}); 
+0

什麼錯誤出現 –

+0

沒有錯誤。只是不會進入結賬的下一個階段 –

回答

3

由於URL顯示了控制器結構的validate功能,您可以在類中找到具有位於

目錄\控制器\結賬\ shipping_method.php名ControllerCheckoutShippingMethod

0

結帳使用多個頁面爲 作爲阿賈克斯網址是

url: 'index.php?route=checkout/shipping_method/validate', 

從頁面結帳/ shipping_method.php與功能 驗證檢索數據。

和 客人結賬

checkout/guest.php  


public function save() {//this function consist validation 

checkout/shipping_method.php 
checkout/payment_method.php 

您可以通過使用螢火蟲控制檯,這會使你清楚 哪些部分或頁面通過AJAX調用是當前正在運行的檢查。