2013-07-27 120 views
1

我需要一個示例,可以讓我在第一個下拉列表後填充第二,第三,...,第7個下拉列表(所有相同的條目)列表已被選中。在HTML頭之前,我將所有的值存儲在PHP中的一個數組中。在javascript/php/html中選擇第一個下拉列表後,更新第二個下拉列表

我看了一些例子,並且不可能找到一個具體的解決方案

例如: 比方說,我有一個滿倉下的上述加盟商的加盟商和出口的,我需要爲7創建順序列表有n家網點的特定加盟商提前了幾天。我的解決方案是,用戶/倉庫運營商會選擇一個加盟商,然後第二個(至第七個)下拉列表中會包含那些被挑選加盟商的網點。

謝謝。


<?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">&nbsp;</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提供瞭解決方案,但它不會與多個下拉菜單工作。

+0

向我們展示一些代碼! –

+0

@ErmanBelegu好吧,我會嘗試 –

+0

你的'populateOutlet()'函數在哪裏定義?另外,它是一個錯字,你有'nChange =「populateOutlet()」'而不是'onChange =「populateOutlet()」'? – Sean

回答

0

爲了使用JavaScript的例子,你需要一個ID添加到您的第二-7選擇 - id="displayOutlet<?php echo $j; ?>"

<?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">&nbsp;</option> 
      </select> 
     </td> 
<?php } ?> 

然後在你的JavaScript代碼,你可以添加一個循環的第2,第7選擇。

if(req.status == 200) { // which represents ok status 
    for(var i=0;i<7;i++){ 
     document.getElementById('displayOutlet'+i).innerHTML=req.responseText; 
    }  
} 
+0

謝謝你......好吧,我在調整了幾個後,纔開始工作 –

相關問題