1

私は2種類の選択リストメニューを持っています:

<select name="category">
<option>----Select----</option>
<option>Category 1</option>
<option>Category 2</option>
<option>Category 3</option>
<option>Category 4</option>
</select>

<select name="category_product">
<option>----Select----</option>
<option>Product of category 1</option>
<option>Product of category 1</option>
<option>Product of category 1</option>
<option>Product of category 1</option>
</select>

私が気に入ったのは、選択リスト メニューの「Category 1」を選択すると、選択リスト メニュー「category_product」がエコーされることです。これを行うにはどうすればよいですか?

category_product リスト メニューを変数に入れることを考えていました。カテゴリを選択すると、category_products リスト メニューがエコーされますが、カテゴリが選択されたときにこれを検出する方法がわかりません。

いくつかの助けを願っています

4

1 に答える 1

-1

あなたの唯一の方法は、JSまたはjQueryでこれを行うことです。これは、JSで行う例です。

function showProducts(cat){
   document.getElementById(cat).style.display = 'block';
}

<select name="category" onchange="showProducts(this.value)">
<option>----Select----</option>
<option value="category_product">Category 1</option>
<option>Category 2</option>
<option>Category 3</option>
<option>Category 4</option>
</select>

<select style="display:none" id="category_product" name="category_product">
<option>----Select----</option>
<option>Product of category 1</option>
<option>Product of category 1</option>
<option>Product of category 1</option>
<option>Product of category 1</option>
</select>

または、結果をデータベースから直接取得する必要がある場合は、AJAX 呼び出しを行う必要がある別のオプションがあります。

アップデート:

上記の代わりにこの関数を使用してください。

function showProducts(cat){
   for(var i=1;i<document.getElementsByTagName('select').length;i++){
     document.getElementsByTagName('select')[i].style.display = 'none';
   };
   document.getElementById(cat).style.display = 'block';
}

あなたはそれをいじることができます.さらに助けが必要な場合はお知らせください.

于 2012-07-03T15:41:12.610 に答える