Ответ 1
Вот как работает атрибут disabled
. Когда элемент управления формы отключен, значение будет проигнорировано при отправке формы, и ключ не будет присутствовать в $_POST
(или $_GET
).
Если вы хотите, чтобы значение присутствовало в представленных данных, но вы не хотите, чтобы пользователь мог изменять значение на странице (что, как я полагаю, вы пытаетесь добиться), используйте readonly="readonly"
вместо disabled="disabled"
.
ИЗМЕНИТЬ
Элемент <select>
не имеет атрибута readonly
. Вышеприведенная информация по-прежнему сохраняется, поскольку она будет работать для <input>
и <textarea>
s.
Решение вашей проблемы здесь заключается в отключении выбора и использовании скрытого ввода для отправки значения обратно на сервер - например,
Когда выбор включен:
<select class="txtbx1" name="country">
<!-- options here -->
</select>
... и когда он отключен:
<select class="txtbx1" name="country_disabled" disabled="disabled">
<!-- options here, with appropriate value having `selected="selected"` -->
</select>
<input type="hidden" name="country" value="value_of_field" />