У меня есть запрос ajax, который выглядит следующим образом:
$("#frmProducts").submit(function(){
var dataSet = $("#frmProducts").serialize();
$.ajax({
url: "<?php echo base_url();?>products/updateBasket",
data: dataSet,
type: "POST",
success: function(html){
$('html, body').animate({scrollTop:0}, 'slow');
$("#bagInfo").load("/checkout/loadCartView");
$('body').append(html);
$('#basketoverview').fadeIn(2000);
setTimeout(function () { $('#basketoverview').fadeOut(2000).hide(); }, 8000);
}
});
return false;
});
Это должно сделать запрос к URL-адресу и получить назад фрагмент HTML, код PHP, который вызывает ajax, выглядит следующим образом;
function updateBasket()
{
$this->load->model('Checkout_model');
$this->load->model('Product_model');
$derivativeId = $this->input->post('selDerivative-1');
$quantity = $this->input->post('selQuantity');
$derivative = $this->Product_model->GetProducts(array('pdId' => $derivativeId), 'small');
// Add item to shopping bag.
$attributes = $this->Product_model->GetProductDerivatives(array('pdId' => $derivativeId));
$this->Checkout_model->AddProduct($derivative, $attributes, $quantity);
$this->data['message'] = 'Item added to Shopping Bag.';
// Update Delivery Price
$this->Checkout_model->updateDelivery(49);
$this->data['items'] = $this->Checkout_model->GetProducts();
$this->template
->build('checkout/quickbasket', $this->data);
}
Однако, когда я запускаю метод, HTML не возвращается так, как я себе представляю, и если я предупреждаю HTML в своем JavaScript, я получаю черное диалоговое окно.
Любая причинадля этого я сделал что-то не так?