optgroup получает в php ярлык, связанный - PullRequest
1 голос
/ 18 января 2012

У меня есть следующий код в HTML-форме

<select name="category" class="input" onchange="ShowTB(this,'suggest');">
      <option value="0" selected="selected">
        [choose yours]
      </option>
      <optgroup label="Item">
      <option value="SubItem1"SubItem1</option>
    <option value="SubItem2">SubItem2</option>
  </optgroup>
      <option value="Item2">Item2</option>
      <optgroup label="Item3">
     <option value="SubItem4"SubItem4</option>
     <option value="SubItem5">SubItem5</option>
  </optgroup>
      <option value="Item4">Item4</option>
<option value="Item5">Item5</option>
<option value="Item6">Item6</option>
<option value="Item7">Item7</option>

</select>

в php Я получаю значение поля, выбранного с помощью:

$category = $_POST['category'];

в этом режиме, если я выбираю в форме, т.е.: SubItem1, в php я получаю значение SubItem1, но я хочу также получить связанную метку, т. Е. Item или, если я выбираю SubItem5, я ​​получаю SubItem5, но я хочу также получить связанную метку, т.е.

Ответы [ 2 ]

7 голосов
/ 18 января 2012

Действительно, вы получаете только значение. Если вам нужно больше, просто закодируйте в значение все, что вы хотите, например:

<option value="Item3.SubItem5">SubItem5</option>

Кроме того, вы можете использовать javascript для перехвата onChange событий в поле select и обновления скрытого поля ввода с помощью требуемой метки.

1 голос
/ 18 января 2012

вы можете сделать массивы значений, например

<option value="Item3[SubItem5]">SubItem5</option> 

, тогда ваш $ _POST ['category'] должен вернуть массив

...