2013-02-25 6 views
-1

Я искал здесь, но, несмотря на то, что нашел много похожих и, скорее всего, МНОГО более сложных ситуаций, не смог найти ответ на то, что я хочу делать.Проверьте скрытые поля ввода на основе выбранной радио кнопки

В основном, по форме поиска моего сайта я хочу представить варианты 2 радиокнопок:

<label><input type="radio" name="question_9[]" value="Blue" checked="checked" />Blue</label>  
<label><input type="radio" name="question_9[]" value="Green" />Green</label> 

НО то, что я хочу быть представлен с поисковой формой:

<input type="hidden" name="question_9[]" value="Blue" checked="checked"/> 
<input type="hidden" name="question_9[]" value="Blue/Green" checked="checked"/> 

ИЛИ

<input type="hidden" name="question_9[]" value="Green" checked="checked"/> 
<input type="hidden" name="question_9[]" value="Blue/Green" checked="checked"/> 

В зависимости от того, какой переключатель установлен при отправке формы.

Программное обеспечение, которое я использую, недавно перенесено из сценария в JQuery, к которому я совершенно не знаком. Я надеюсь, что есть простой способ передать 2 значения для вопроса, на основе которого выбран переключатель, поскольку, насколько я знаю, я могу только выбрать значение ONE с помощью переключателей, если только не сделаю обходной путь, подобный этому. Поскольку сами переключатели не будут/не должны представлять значения в форме, их можно переименовать или сделать что угодно, чтобы заставить их работать.

Я очень ценю любые советы и снова, я посмотрел и не нашел другого вопроса, требующего сделать то же самое, что и это (меня это удивило), но НАДЕЕТСЯ, что я не избавляюсь от такого вопроса.

+0

'атрибут Checked' используется только с радио-кнопка или чекбокс не с типом' hidden'. –

ответ

0

Вы не сможете отправить два значения с тем же именем - используете ли вы переключатели, флажки, скрытое текстовое поле или что угодно. Вам нужно подумать о том, что увидит сценарий PHP/ASP, обрабатывающий ваши данные - например, для PHP, какое значение должно иметь значение $ _POST ['question_9'] (или $ _GET ['question_9'])? Это значение необходимо передать из одного поля.

Хорошей новостью является то, что вам не нужны какие-либо причудливые трюки javascript для передачи правильной информации в ваш скрипт. Если вы хотите, чтобы ваша переменная PHP была «Blue Blue/Green», вы можете просто изменить элемент «значение» вашего переключателя на «Синий синий/зеленый».

Вам необходимо проанализировать ваши значения на стороне PHP - например,

$colorArray = explode(' ',$_POST['question_9']) 

PHP explode() сломается строку в массив, используя разделитель, в данном примере, используя пространство.

EDIT:

В ответ на разъяснение, решение проще. Радио-кнопка выведет вас, будет ли Blue или Green отправлен - если вы хотите также отправить Blue/Green вместе с ним как часть массива «question_9», независимо от того, отмечен ли синий или зеленый цвет, вы должны просто добавить один скрытое поле, как вы сказали (удаление «проверил» атрибут, так как он относится только к флажков и переключателей):

<input type="hidden" name="question_9[]" value="Blue/Green"/> 
+0

спасибо за быстрый ответ и предложение! Не уверен, имеет ли какое-либо значение ваш ответ, но фактическое «имя» для вопроса: name = «b [question_9] []» и является частью раздела «multiselect», в котором параметры выпадающего значения теперь представлены как «флажки» », а человек МОЖЕТ выбрать более одного. Я бы предпочел использовать радиокнопки, хотя и передать «Синий/Зеленый» (т. Е. «Без предпочтений») в качестве скрытого значения с выбранным значением радио.Кроме того, этот тип вопроса разделяют другие вопросы, поэтому я обеспокоен тем, что это осложнит работу в php-файле, не затрагивая и другие вопросы. – Denny

+0

gosh .... i THOUGHT, что это должно быть сложно, т. Е. Что, поскольку я использую радиокнопки, я мог бы ТОЛЬКО иметь одно значение, представленное для «имени», в том числе, если было скрытое поле. Следовательно, моя мысль о том, что я каким-то образом должен был использовать флажки, которые позволяли бы выбирать несколько значений, и использовать только переключатели вокруг, чтобы присвоить проверенное значение флажку за сценой .... получается, что isn это дело lol, и решение действительно было ТАКОЙ простой. Спасибо за ваше время и ответ! – Denny

Смежные вопросы