#php #html #forms #select
#php #HTML #формы #выберите
Вопрос:
Я пытаюсь выполнить следующий код:
<label for="gender">Gender*: </label>
<select name="user[test]" id="gender">
<? echo "THISISATEST"?>
<option value="-1"> - Select - </option>
</select>
И это ничего не делает.
Тем не менее, это работает нормально:
<select name="user[test]" id="gender">
<option value="-1"> - Select - </option>
</select>
<? echo "THISISATEST"?>
Что происходит?
Спасибо!
Редактировать: я идиот, я пытался упростить проблему для публикации здесь, оказывается, что эхо появляется в сорусе, а строка, в которой я пытаюсь динамически создать just, не работает. Сумасшедший. Я забыл заключить свое сокращение if?else: в квадратные скобки, из-за чего вся строка не отображалась.
Спасибо
Комментарии:
1. с какой целью вы хотите создавать параметры с помощью php ?.
Ответ №1:
<select name="user[test]" id="gender">
<? echo "THISISATEST"?> /// You can't echo string inside <select></select>
<option value="-1"> - Select - </option>
</select>
Скорее сделайте
<select name="user[test]" id="gender">
<option value="0"><? echo "THISISATEST"?></option> // This will work
<option value="1"> - Select - </option>
</select>
Ответ №2:
<select name="user[test]" id="gender">
<option value="<?php
echo "THISISATEST";
?>"><?php
echo "THISISATEST";
?></option> // This will work
<option value="1"> - Select - </option>
Это должно работать нормально. Вы также можете ввести желаемое значение
Ответ №3:
Вы полностью уверены, что короткие теги включены на вашем сервере? Я бы просто перепроверил <?php echo "THISISATEST"; ?>
и посмотрел, улучшит ли это вашу удачу. Кроме того, вы просматривали исходный код — потому что это значение могло быть скрыто на отображаемой странице при выборе как таковом.
Ответ №4:
Просто. Ваш браузер игнорирует текстовые узлы под select
узлом. Этого нет в спецификации HTML, поэтому браузеры могут изменять его, как им нравится.