我需要一个可以填充第二、第三、,。。。,选择第一个下拉列表后的第七个下拉列表(所有相同条目)。我将所有的值存储在HTML头之前的PHP数组中。
我看了一些例子,但找不到具体的解决方案
例如:假设我有一个仓库,里面装满了上述特许经营商和网点,我需要为拥有n个网点的特定特许经营商提前7天创建订单列表。我的解决方案是,用户/仓库运营商将选择一个特许经营商,然后第二个(直到第七个)下拉列表将包含所选特许经营商下的门店。
谢谢。
<?php
$productClass = new product();
$productClass->setProductList();
$franchiseeClass = new users();
$franchiseeClass->getAndSetAllFranchisees();
$franchiseeArray = $franchiseeClass->getUserList();
$operatorOutletClass = new users();
$operatorOutletClass->getAndSetUserByLevel("5");
?>
<html><head></head><body>
<div align="center">
<form name="BBOFranchisee" method="post" action="?" onSubmit="return checkSubmit()">
<table align="center" border="1">
<tr>
<td>
Franchisee:
</td>
<td colspan="8">
<select name="displayFranchisee" size="1" onChange="populateOutlet('findOutletByFranchisee.php?fid='+this.value)">
<option label="franchisees" value="0">--Choose Franchisee--</option>
<?php
for($i=0;$i<count($franchiseeArray);$i++)
{
foreach($franchiseeArray[$i] as $key => $val)
{
echo "<option label='"franchisees'" value='"$key'">$val</option>'n";
}
} ?>
</select>
</td>
</tr>
<tr>
<?php for($j=0;$j<7;$j++) { ?>
<td>
Outlet:
<select name="displayOutlet<?php echo $j; ?>" size="1">
<option label="outlets" value="0"> </option>
</select>
</td>
<?php } ?>
</tr>
</body>
</html>
我想继续是javascript部分。。我试图找到解决方案http://roshanbh.com.np/2007/12/change-dropdown-list-options-values-from-database-with-ajax-and-php.html提供,但它不适用于多个下拉列表。
为了使用这个javascript示例,您需要在第2到第7次选择-id="displayOutlet<?php echo $j; ?>"
中添加一个id
<?php for($j=0;$j<7;$j++) { ?>
<td>
Outlet:
<select name="displayOutlet<?php echo $j; ?>" id="displayOutlet<?php echo $j; ?>"size="1">
<option label="outlets" value="0"> </option>
</select>
</td>
<?php } ?>
然后在您的javascript代码中,您可以为第2nd-7th个选择添加一个循环。
if(req.status == 200) { // which represents ok status
for(var i=0;i<7;i++){
document.getElementById('displayOutlet'+i).innerHTML=req.responseText;
}
}