Здравствуйте! Как сделать перенаправление на страницу при нажатии на radiobutton без перезагрузки страницы?
В фильтре есть чекбоксы, которые примерно это и выполняют:
формирование checkbox:
вызов ф-ции с передачей в нее параметров:
сама ф-ция js:
У меня же radiobutton выводятся так:
И в js пока вот так:
Просто я не знаю как устроена реализация перенаправлений у битрикс без перезагрузки страницы, буду рад любым советам, с указанием на ф-ции, классы, ссылки на маны, может быть кто расщедрится на примеры)))
Заранее спасибо!
В фильтре есть чекбоксы, которые примерно это и выполняют:
формирование 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"])?>); |
| Код |
|---|
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();
}); |
Просто я не знаю как устроена реализация перенаправлений у битрикс без перезагрузки страницы, буду рад любым советам, с указанием на ф-ции, классы, ссылки на маны, может быть кто расщедрится на примеры)))
Заранее спасибо!