Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С Битрикс
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/10: Рейтинг темы: голосов - 10, средняя оценка - 4.80
sMockingbird
282 / 282 / 72
Регистрация: 06.05.2013
Сообщений: 1,613
1

Деактивировать элемент при незаполненном поле

25.09.2013, 12:25. Просмотров 1825. Ответов 2
Метки нет (Все метки)

Добрый день.
Возможно ли сделать так, чтоб элемент каталога деактивировался автоматически, если у него не заполнены определённые поля?
Кроме варианта написАть скрипт, который переберёт все элементы, проверит и деактивирует, если надо)
Может есть какой то штатный способ?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2013, 12:25
Ответы с готовыми решениями:

Как при незаполненном поле выводить все записи в отчет
Такая задача. Имеется некий отчет, который формируется на основе регистра...

Можно ли деактивировать форму, при этом не деактивировать MainMenu и PopupMenu?
Здравствуйте. Проблема такая: мне нужно чтобы нельзя было кликать по форме, но...

Оповещение о незаполненном поле
Мне нужно сделать чтобы при отправке пустого сообщения выводилось сообщение над...

Как деактивировать макрос при входе в Office. Переустановка не помогает
Добрый день, уважаемые. Не уверен что тема по адресу но все же. Написал на VB...

Как деактивировать ячейку, не потеряв при этом выбранный диапазон
Здравствуйте! Нужна помощь. Но основе выбранного (вручную) диапазона нужно...

2
tgarl
357 / 351 / 81
Регистрация: 15.02.2012
Сообщений: 1,350
25.09.2013, 16:12 2
штатно только если по умолчанию проставить у вновь создаваемого неактивен, и если забыл перевести активность элемент будет неактивным

иначе писать обработчик
1
sMockingbird
282 / 282 / 72
Регистрация: 06.05.2013
Сообщений: 1,613
25.09.2013, 16:44  [ТС] 3
tgarl, да, уже пытаюсь, спасибо)

Добавлено через 26 минут
tgarl, вроде набросал скрипт, но не работает.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$arSelect = Array("ID");
$arFilter = Array("IBLOCK_ID"=>"3", "ACTIVE"=>"Y");
$res = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect);
while($ob = $res->GetNextElement())
{
$arFields = $ob->GetFields();
$db_props = CIBlockElement::GetProperty("3", $arFields["ID"], array(), Array("CODE"=>"IMAGES"));
    if($ar_props = $db_props->Fetch()) {
if (!$ar_props["VALUE"]) {
$el = new CIBlockElement;
$arLoadProductArray = Array(
    "ACTIVE" => "N"
);
$PRODUCT_ID =  $arFields["ID"];
echo $PRODUCT_ID;
$res = $el->Update($PRODUCT_ID, $arLoadProductArray);
}
}
}
 
 
?>
Если вместо $arFields["ID"] задать строго id элемента, то всё норм, он его находит и деактивирует.
А так нет. В конце выводит правильный id, но только один, самый первый по ходу. Его деактивирует и всё.
Даже футер не грузит на этой страничке)
Вся проблема в последней строке, update. Наверное слишком много изменений сразу, примерно 2000 элементов)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.09.2013, 16:44

Как "деактивировать" popupmenu при наведении на другой компонент
Обычно оно деактивируется когда кликаешь куда-нибудь,а потом при вызове опять...

Вывести сообщение о незаполненном Edit
В Edit вводится имя и необходимо, чтобы если ничего в него не было записано...

Написать сценарий, который при вводе текста в текстовом поле будет формировать элемент списка с этим текстом
Напишите сценарий, который при вводе текста в текстовом поле (&lt;input...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru