I am writing a shop application, and I have a question.
As you know ajax in Yii looks like
<?php
echo CHtml::ajaxLink(
'',
array("cart/add/id/$item->id"),
array(
'update'=>'#cart',
),
array('class' => "button_basket")
);
?>
This code updates the div with id = cart. How can I update the other elements on the page? For example on the Cart page, I am removing via ajax one item and I need to update the Total price, what is the best way to do this?
For this you’ll need to write some javascript, preferably a function that will read the response from the server, and make changes in the ui accordingly.
If you go through the documentation for
ajaxLink();, you’ll see that the third parameter is ajaxOptions which takes the options of jQuery’s ajax method. Therefore you can write a callback function for the success event. And in this function you can make changes to your ui.Sample code:
Somewhere in the current view you can use
registerScriptto output the function to the view: