Элион, на форуме уже решали подобную задачу - здесь
тема В шаблоне компонента найдите строчку
сразу вставьте следующий код
Код /*
* СВОЙСТВО ТИПА СПРАВОЧНИК
*/
if($propertyID == 67):
if (!CModule::IncludeModule('highloadblock'))
continue;
$ID = 3; //ID of highloadblock Connections
//сначала выбрать информацию о ней из базы данных
$hldata = Bitrix\Highloadblock\HighloadBlockTable::getById($ID)->fetch();
//затем инициализировать класс сущности
$hlentity = Bitrix\Highloadblock\HighloadBlockTable::compileEntity($hldata);
$hlDataClass = $hldata['NAME'].'Table';
$result = $hlDataClass::getList(array(
'select' => array('ID', 'UF_NAME', 'UF_XML_ID', 'UF_FILE'),
'order' => array('UF_SORT' =>'ASC'),
//'filter' => array('UF_SORT'=>'100'),
));
$iter = 0;
while($res = $result->fetch())
{
$selected = "";
$addstyle="";
foreach($arResult["ELEMENT_PROPERTIES"][$propertyID] as $filledSpravochnik)
{
if($res['UF_XML_ID'] == $filledSpravochnik["VALUE"]){
$selected = " checked";
$addstyle = "highlight";
}
}
$imgPath = CFile::GetPath($res['UF_FILE']);
?>
<div class="buttonsinline">
<div>
<input style="display: none" name="PROPERTY[<?=$propertyID?>][<?=$iter?>]" id="PROPERTY[<?=$propertyID?>][<?=$iter?>]" value="<?echo $res['UF_XML_ID']?>" type="checkbox"<?=$selected?>>
<label for="PROPERTY[<?=$propertyID?>][<?=$iter?>]" data-role="label_PROPERTY[<?=$propertyID?>][<?=$iter?>]" class="<?=$addstyle?>" oncl ick="$(this).toggleClass('highlight');" title="<?echo $res['UF_NAME']?>">
<span class="buttonouterspan">
<span class="buttoninnerspan" st yle="background:url('<?=$imgPath?>');"></span>
</span>
</label>
</div>
</div>
<?
$iter++;
}
else:
/*
* СВОЙСТВО ТИПА СПРАВОЧНИК -КОНЕЦ-
*/
и в конце этого case (перед break;) поставьте
ну и не забудьте проставить в этом коде свои ID и классы. Вот стили:
Код <st yle>
.buttonsinline{
float:left;
margin-right: 7px;
}
.buttonouterspan{
font-weight: normal;
display: inline-block;
width: 38px;
height: 38px;
padding: 2px;
text-align: center;
text-decoration: none;
color: #000000;
vertical-align: middle;
border: 3px solid #ccd5db;
border-radius: 2px;
background: #ffffff none repeat scroll 0% 0%;
position: relative;
transition: border 0.3s ease 0s, box-shadow 0.1s ease 0s, color 0.3s ease 0s;
cursor: pointer;
}
.buttoninnerspan{
line-height: 28px;
border-radius: 2px;
display: inline-block;
width: 28px;
height: 28px;
vertical-align: middle;
box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset;
background-size: cover !important;
}
.highlight span{
border-color: #ff6e56;
}
</style>