我有一个使用foreach循环填充的表。我的一个专栏是SKU Group,这是一个下拉框列。但是,每当foreach循环运行时,只有该行的一个对应值显示在下拉框内。
如何获取它以便我可以运行foreach循环并正确填充表格,而下拉列表也填充每个SKU组名称而不仅仅是与每行对应的单个值?
通常情况下,我只是运行这个foreach($var->fetchAll() as $var1)
下拉列表来填充它们,但我不认为它可以在另一个已经运行的循环中正常运行。所以这就是我遇到这个问题的原因。
HTML表:
<table id="skuTable" cellspacing="5" class="ui-widget ui-widget-content">
<thead>
<tr class="ui-widget-header">
<th style="display: none">Product ID</th>
<th class="skuRow">Major Category</th>
<th class="skuRow">Minor Category</th>
<th class="skuRow">Report Code</th>
<th class="skuRow">SKU</th>
<th class="skuRow">SKU Description</th>
<th class="skuRow">SKU Status</th>
<th class="skuRow">Create Date</th>
<th class="skuRow">SKU Group</th>
<th class="skuRow">Edit</th>
</tr>
</thead>
<tbody>
<?php foreach ($dbh->query($query) as $row) {?>
<tr>
<td style="display: none" class="prod_id" id="product_id-<?php echo intval ($row['Product_ID'])?>"><?php echo $row['Product_ID']?></td>
<td class="major_cat" id="major_cat-<?php echo intval ($row['Major Category'])?>"><?php echo $row['Major Category']?></td>
<td class="minor_cat" id="minor_cat-<?php echo intval ($row['Minor Category'])?>"><?php echo $row['Minor Category']?></td>
<td class="rep_code" id="rep_code-<?php echo intval ($row['Product Report Code'])?>" align="center"><?php echo $row['Product Report Code']?></td>
<td class="sku" id="sku-<?php echo intval ($row['SKU'])?>" align="center"><?php echo $row['SKU']?></td>
<td class="sku_desc" id="sku_desc-<?php echo intval ($row['SKU Description'])?>"><?php echo $row['SKU Description']?></td>
<td class="sku_status" id="sku_status-<?php echo intval ($row['SKU Status'])?>" align="center"><?php echo $row['SKU Status']?></td>
<td class="create_date" id="create_date-<?php echo intval ($row['Date'])?>" align="center"><?php echo $row['Date']?></td>
<td class="sku_group" id="sku_group-<?php echo intval ($row['SKU Group'])?>" align="center">
<select id="sku_group_dropdown">
<option
value=""
data-name="<?php echo $row ['SKU Group'];?>"
>
<?php echo $row ['SKU Group'];?>
</option>
</select>
</td>
<td><input type="button" class="edit" name="edit" value="Edit"></td>
</tr>
<?php } ?>
</tbody>
</table>
答案 0 :(得分:0)
首先需要使用循环
填充下拉列表<?php
$i = 0;
$content = '';
$names = array('Test1','Test2');
foreach ($names as $row) {
if($i== 0){
$names = array('Test1','Test2');// replace it echo $row ['SKU Group'];
foreach($names as $key)
{
$content .= '<option value="'.$key.'">'.$key.'</option>';
}
}
$i++;
?>
<tr>
<td>sadasdsa</td>
<td class="sku_group" id="sku_group-<?php echo intval ($row['SKU Group'])?>" align="center">
<select id="sku_group_dropdown">
<?php echo $content?>
</select>
</td>
<td><input type="button" class="edit" name="edit" value="Edit"> </td>
</tr>
<?php } ?>
在此代码中替换您的数组数据,或者如果您想在循环外填充下拉数据,那么首先获取您的组数据,您可以使用此代码