$_POST не показывает элемент формы, спрятанный jQuery
У меня есть форма, которая использует jQuery, чтобы скрыть поля, которые не имеют отношения, если не выполнены определенные условия:
<form action="thepage.php id="subform" method="post">
<h2>
Select a Drawing Type:
</h2>
<div>
<input type="radio" name="drawingType" tabindex="10" value="1"/>Drawing 1
<input type="radio" name="drawingType" value="2"/>Drawing 2
<input type="radio" name="drawingType" value="3"/>Drawing 3
<input type="radio" name="drawingType" value="4"/>Drawing 4
</div>
<p class="drawingInput drawX">
Is this drawing related to an old drawing?
<input type="radio" name="revUp" tabindex="100" value="0"/>No
<input type="radio" name="revUp" value="1"/>Yes
</p>
<input type="submit" name="submitted" value="New Drawing" />
</form>
С помощью jQuery:
$('.drawingInput').hide;
$('input:[name="drawingType"]').change(function(){
if ($(this).val()==1){
$('.drawingInput').hide();
$('.drawX').show();
} else if ($(this).val()==2){
$('.drawingInput').hide();
$('.drawX').show();
} else if ($(this).val()==3){
$('.drawingInput').hide();
} else if ($(this).val()==4){
$('.drawingInput').hide();
}
});
Поэтому, когда выбран чертеж 1 или 2, открывается следующая кнопка ввода. Затем пользователь выбирает revUp
поле, и подчиняется, все работает нормально. Однако если p
никогда не раскрывается, например, если не выбрать значение 1 или 2 в первом блоке радио, revUp
никогда не $_POST'ed, с доказательством var_dump($_POST)
,
Как я могу получить значение revUp
если пользователь никогда не видит это? Он отображается в var_dump, когда он виден, но не тогда, когда он никогда не был выбран. То же самое относится и к консоли чтения, проверяя отправленные заголовки.
1 ответ
Похоже на браузер Попробуйте показать их пользователю, но с непрозрачностью 99,9999% или чем-то в этом роде, и посмотрите, будут ли отправлены значения.
С другой стороны: вам действительно нужно отправлять их, если они никогда не редактируются пользователем? Разве это не значит, что вы все равно знаете их ценности?