2016-10-04 98 views
0

我對從Kartik-v的Depdrop和Wbraganca的動態表單有點問題。問題是當我加載更新表單時,數據未加載到第二個動態字段中。直到我添加一個新行,然後顯示數據。Depunder和動態表單問題更新

Image on the problem

它不會給出任何錯誤。我想要的只是數據顯示在第二行,依此類推。

代碼形式

<?php $catList=ArrayHelper::map(Hs::find()->all(), 'hscode', 'hscode');?> 
      <?= $form->field($modelsItems, "[{$i}]hscode")->dropDownList($catList, ['id'=>'cat-id','prompt'=>'Select...']);?> 
     </div>          

     <div class="col-sm-6" style="width: 200px"> 

      <?= $form->field($modelsItems, "[{$i}]hsproduct")->widget(Depdrop::classname(), [ 

       'options'=>['id'=>'product-id'],    
       'pluginOptions'=>[ 
       'placeholder' => FALSE, 
       'initialize' => true, 
       'depends'=>['cat-id'], // the id for cat attribute    
       'url'=> Url::to(['hs/subcat']),     
       ] 

       ]); 
        ?> 
     </div>   

     <div class="col-sm-6" style="width: 170px"> 

      <?php $companylist=ArrayHelper::map(Company::find()->all(), 'company', 'company');?> 
      <?= $form->field($modelsItems, "[{$i}]company")->dropDownList($companylist, ['id'=>'company-id','prompt'=>'Select...']);?> 
     </div> 

     <div class="col-sm-6" style="width: 170px"> 
      <?= $form->field($modelsItems, "[{$i}]variety")->widget(DepDrop::classname(), [ 

       'options'=>['id'=>'cp-varitey'], 
       'pluginOptions'=>[ 
       'placeholder' => FALSE, 
       'initialize' => true, 
       'depends'=>['company-id'], // the id for cat attribute    
       'url'=> Url::to(['company/subcat2']) 
       ] 

       ])->label('Variety'); 

        ?>  
     </div> 
+0

任何人都知道的解決方案或可以協助? – user5469526

回答

1

對於那些有同樣的問題我通過改變ID解決這個問題誰。第一個ID是cat-id,但是當你創建一個新的動態字段時,id由於某種原因改爲cat-0-id。我解決這個問題的方法是將ID改爲 'id'=>「cat - 」。$ i。「 - id」,並且應該爲id的其餘部分執行此操作。我現在的產品ID是'id'=>「product - 」。$ i。「 - id」。

我希望這有助於某人。謝謝