4

すべてのカテゴリとサブカテゴリを一度に表示する選択ボックスを表示する必要があります。

すべてのサブカテゴリはそれぞれのカテゴリに分類されますが、インデントされてイタリック体になりますが、すべてのカテゴリを最も左に太字で表示したいと思います。

PHPでこのような選択リストを作成するにはどうすればよいですか?

Magento Ecommerce(www.magentocommerce.com)管理パネルにこのようなものがあります。

カテゴリはDBから取得され、次のように最大6レベルになる場合があります。

`猫1

猫1A

猫1B

猫2

猫2A

猫2AA

猫2AB

猫2AC

猫2ACA

猫3`

など。サブカテゴリを持つすべてのカテゴリは太字で、すべてのサブカテゴリは斜体である必要があります。

私が何を達成したいのかがより明確になったことを願っています。

4

5 に答える 5

5

select 要素で optgroup 要素を使用する必要があります。

<select name="Namen" size="6">
  <optgroup label="Namen mit A">
     <option label="Anna">Anna</option>
     <option label="Achim">Achim</option>
     <option label="August">August</option>
  </optgroup>
  <optgroup label="Namen mit B">
     <option label="Berta">Berta</option>
     <option label="Barbara">Barbara</option>
     <option label="Bernhard">Bernhard</option>
  </optgroup>
</select>

その後、次の方法でスタイルを設定できます

optgroup {
    font-weight:bold;
    /*etc*/
}
于 2009-07-21T12:52:27.660 に答える
0

次のように、インデントする各要素の前に2、3のを追加することができます。

<select id="mySelect">
    <option value="topLevelFoo">Foo</option>
    <option value="subBar">& nbsp;& nbsp;Bar</option>
    <option value="subBaz">& nbsp;& nbsp;Baz</option>
</select>

少し醜いですが、(少なくとも視覚的には)目標を達成するには十分なはずです。これを行うもう1つの一般的な方法は、ハイフンを使用してこれらのタイプの選択肢を示すことです。

幸運を!

編集:ええと、SOエディターが& nbsp;要素をレンダリングしているようです。これを回避するためにアンパサンドの後にスペースを追加しましたが、スペースは実際にはコードに表示されません。

于 2009-07-21T12:51:47.223 に答える
0

カテゴリを太字にするには、optgroup タグを使用します。

<html>
    <body>
            <select>
                    <optgroup label="Numbers">
                            <option value="1">One</option>
                            <option value="2">Two</option>
                            <option value="3">Three</option>
                    </optgroup>
                    <optgroup label="Letters" disabled="true">
                            <option value="4">A</option>
                            <option value="5">B</option>
                            <option value="6">C</option>
                    </optgroup>
            </select>
    </body>

于 2009-07-21T12:52:46.897 に答える
0

必要なもののようなものがあるHtmlソースを見て、phpが出力する必要があるコードを知っています。そして、あなたはそれをしなければなりません。それがどのように正確に行われるかは、データの保存方法などによって異なります。質問が解決されない場合は、より具体的に取得してください

于 2009-07-21T12:54:55.447 に答える
0

これは PHP とは関係ありません。必要なのは、スタイルを設定するための HTML と CSS です。

次のような ID でリストを作成できます。

<select class="category">
    <option>Category</option>
    <optgroup label="Optional label">
        <option>More options</option>
    </optgroup>
</select>

次に、次のようにスタイルを設定できます。

.category option {
    font-weight: bold;
}

.category optgroup option {
    font-style: italic;
}
于 2009-07-21T12:55:39.317 に答える