Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Display:block при условии (https://javascript.ru/forum/misc/78584-display-block-pri-uslovii.html)

samdo 07.10.2019 21:39

Здесь что-то обрезалось?
<?=$preorder['quantity'] > 0 ? 'none' : 'block'?>

laimas 07.10.2019 21:44

Ничего тут не обрезалось, это тернарный оператор a ? b : c, а <?= короткая запись, тоже самое что и <?php echo, а здесь ?> совсем не нужно закрывать строку кода точкой с запятой, ибо она одна и последняя.

samdo 07.10.2019 21:49

Не сработало( как был display: none, так и остался

laimas 07.10.2019 22:02

Выполните этот код отдельно:
$a = 0;
echo $a ? 'N' : 'Y';
$a = 1;
echo $a ? 'N' : 'Y';

Работает и правильно? Тоже самое и ваше, которое записать можно проще:
style="display:<?=$preorder['quantity'] ? 'none' : 'block'?>"

и если $preorder['quantity'] действительно не ноль, то у элемента будет style="display:none", иначе style="display:block". Последнее же получится если $preorder['quantity'] не существует и возвращает null.

samdo 07.10.2019 22:17

Выполнил код, что выше дали, на странице выводися вот это YN (при любых манипуляциях никак не изменяется).

<?=$preorder['quantity'] ? 'none' : 'block'?> тоже попробовал, по прежнему без результата(

laimas 07.10.2019 22:24

Цитата:

Сообщение от samdo
на странице выводися вот это YN

Все верно при а=0 (false) , будет Y, а при а=1 (true) будет N. И какие манипуляции? При любом значении а больше нуля всегда будет N. Так что проверьте значение $preorder['quantity'], что удивляться то.


Часовой пояс GMT +3, время: 13:49.