ajax redirect без перезагрузки страницы bitrix
Как сделать перенаправление на страницу при нажатии на radiobutton без перезагрузки страницы? В фильтре есть чекбоксы, которые примерно это и выполняют: формирование checkbox:
<input
type="checkbox"
value="<? echo $ar["HTML_VALUE"] ?>"
name="<? echo $ar["CONTROL_NAME"] ?>"
id="<? echo $ar["CONTROL_ID"] ?>"
data-id="<? echo $ar["CONTROL_ID"] ?>"
data-name="<?=$arItem["NAME"]?>"
data-value="<?=$ar["VALUE"]?>"
<? echo $ar["CHECKED"]? 'checked="checked"': '' ?>
oncl ick="smartFilter.click(this)"
<? if ($ar["ELEMENT_COUNT"]== "0") echo "disabled"; ?>
/>
вызов ф-ции с передачей в нее параметров:
var smartFilter = new JCSmartFilter('<?echo CUtil::JSEscape($arParams["FORM_URL"])?>', '<?=$arParams["FILTER_VIEW_MODE"];?>', <?=CUtil::PhpToJSObject($arResult["JS_FILTER_PARAMS"])?>);
сама ф-ция js:
function JCSmartFilter(ajaxURL, viewMode, params) {
this.ajaxURL = ajaxURL;
this.form = null;
this.timer = null;
this.cacheKey = "";
this.cache = [];
this.viewMode = viewMode;
this.ajaxMode = params.AJAX;
if (params) {
this.params = params;
}
if (params && params.SEF_SET_FILTER_URL) {
this.bindUrlToButton("set_filter", params.SEF_SET_FILTER_URL);
this.sef = true;
}
if (params && params.SEF_DEL_FILTER_URL) {
this.bindUrlToButton("del_filter", params.SEF_DEL_FILTER_URL);
}
}
У меня же radiobutton выводятся так:
<?
$SectionRes = CIBlockSection::GetList(array(), array('IBLOCK_ID'=>$arParams['IBLOCK_ID'], 'ACTIVE'=>'Y', 'SECTION_ID'=>$IBLOCK_SECTION_ID, '!ID' => $arParams['SECTION_ID'] ), false, array("SECTION_PAGE_URL", 'NAME', 'ID', 'IBLOCK_SECTION_ID', 'DEPTH_LEVEL'));
while($arSection = $SectionRes->GetNext()) { $d++;
?>
<div class="v-section v-section-inner <?if($d==1):?>first<?endif;?>">
<div class="category-radio">
<label class="custom-category-radio">
<input type="radio" class="item-category-radio" name="category-radio" value="<?=$arSection['SECTION_PAGE_URL']?>">
<span><?=$arSection['NAME']?></span>
</label>
</div>
<a href="<?=$arSection['SECTION_PAGE_URL']?>"><?=$arSection['NAME']?></a>
</div>
<?
}
?>
И в js пока вот так:
$('body').on('click', '.item-category-radio', (event)=>{
var radio = $(event.currentTarget);
window.location.href = radio.val();
});
Просто я не знаю как устроена реализация перенаправлений у битрикс без перезагрузки страницы, буду рад любым советам, с указанием на ф-ции, классы, ссылки на маны, может быть кто расщедрится на примеры))) Заранее спасибо!