Речь идет о стандартных формах штатного модуля form. Часто их переводят в режим ajax (параметр компонента AJAX_MODE => Y). В режиме ЧПУ эти формы перестают работать в режиме ajax, происходит обновление всей страницы. Чтобы это исправить, вам нужно скопировать шаблон компонента form.result.new в шаблон сайта (как правило, он уже скопирован, так как стандартное отображение формы редко вписывается в дизайн сайта и в 99% его кастомизируют, поэтому вам нужно будет найти нужный шаблон). В шаблоне в файле result_modifier.php (если его нет, то нужно создать) вам нужно прописать такой код:
<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
preg_match_all('/action=(["\']{1})(.*?)\1/i', $arResult["FORM_HEADER"], $arAction);
$url = $arAction[2][0];
$pos = strpos($url, '/filter/');
if($pos !== false){
$newUrl = substr($url, 0, $pos + 1);
$arResult["FORM_HEADER"] = str_replace($url, $newUrl, $arResult["FORM_HEADER"]);
}
Как выбирать свойства которые будут выводиться в фильтре? |
Описание курса
|