1

私は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'];

このモードでは、フォーム ie: SubItem1 を選択すると、php で値 SubItem1 を取得しますが、関連付けられたラベル ie: Item も取得するか、SubItem5 を選択すると SubItem5 を取得しますが、関連付けられたラベル ie: Item3 も取得します。

4

2 に答える 2

7

実際、あなたは価値しか得られません。さらに必要な場合は、必要なものを値にエンコードしてください。次に例を示します。

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

または、javascript を使用onChangeしてフィールドのイベントをキャッチしselect、非表示の入力フィールドを目的のラベルで更新することもできます。

于 2012-01-18T10:47:22.740 に答える
1

たとえば、値の配列を作成できます

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

したがって、 $_POST['category'] は配列を返す必要があります

于 2012-01-18T10:48:56.247 に答える