Как я понял, проблема в скрипте script.js и логике работы компонента, например рассмотри на основе catalog.section.
вот кусок script.js кода
[CODE] $.get(
element.href + "&ajax_buy=1",
$.proxy(
function(data) {
...
$("#cart_line").html(data);
...
}
)
);[/CODE]проблема в переменной data. В нашем случае в неё приходит весь html код страницы, а должен придти только html с информацией по корзине. Идем дальше. В модуле catalog.section находим кусок кода:
[CODE]$strError = "";
if (array_key_exists($arParams["ACTION_VARIABLE"], $_REQUEST) && array_key_exists($arParams["PRODUCT_ID_VARIABLE"], $_REQUEST))
{
...
if(($action == "ADD2BASKET" || $action == "BUY" && $productID > 0) {
...
if(!$strError && Add2BasketByProductID($productID, $QUANTITY, $product_properties))
{
if($action == "BUY")
LocalRedirect($arParams["BASKET_URL"]);
else
LocalRedirect($APPLICATION->GetCurPageParam("", array($arParams["PRODUCT_ID_VARIABL
}
else
{
...
}
}
// Line
}
[/CODE]Заметим, что если все идет штатным образом (нет ошибок при добавлении, добавление прошло и его например не отменили в обработчике и т.п.) то у нас корзина показывается корректно. Т.е все дело в функции LocalRedirect(). Видимо нужно обязательно делать редирект, для корректной перерисовки корзины, именно тогда в script.js придет корректная data. Поэтому добавим в конец условия if после комментария //Line 1 вызов LocalRedirect(). В итоге получим:
[CODE]if (array_key_exists($arParams["ACTION_VARIABLE"], $_REQUEST) && array_key_exists($arParams["PRODUCT_ID_VARIABLE"], $_REQUEST))
{
...
// Line
LocalRedirect($APPLICATION->GetCurPageParam("", array($arParams["PRODUCT_ID_VARIABLE"], $arParams["ACTION_VARIABLE"])));
}
[/CODE]
теперь все работает. Остался вопрос для разработчиков - правильно ли была устранена проблема и почему такие вещи, которые уже обсуждали ранее на форуме (например [url=http://dev.1c-bitrix.ru/community/forums/forum6/topic33152/]Ранее на форуме[/url]) не поправлена в релизе 11, ведь проблема существенная и её легко повторить в демо версии?