2017-02-10 13 views
1

Я сделал все, что нашел, чтобы решить проблему Select2 с помощью Dynamic form, и он работает. Но в этом случае мне нужно использовать параметр Multiple в Select2, и это то, что не работает.Kartik Select 2 Несколько не работает с динамической формой

Multiple Select2 Not Working on Dynamic Form

Выберите 2 Код:

<div class="col-md-3"> 
<?= 
    $form->field($model_periodo, "[{$i}]id")->widget(Select2::classname(), [ 
    'name' => 'periodo_dropdown', 
    'data' => ArrayHelper::map(Periodo::find()->all(), 'id', 'descripcion'), 
    'options' => [ 
    'multiple' => true, 
    'placeholder' => 'Seleccione a el periodo', 
    'value' => '', 
    ], 
    ])->label('Periodo'); 
?> 
</div> 

Примечание: Когда я установил 'мультипликатор' ложь, она работает просто отлично, потому что я уже сделал изменения JS.

Благодарим вас заблаговременно.

+0

является ли это решение, которое вы нашли прямо сейчас? Я сейчас в этой ситуации, что несколько не работают. –

+0

К сожалению, решение изменило требование с клиентом и отделило эти два виджета. – LuisRox

ответ

0

Мы находимся в той же ситуации, я сделал все, чтобы исправить Select2 в динамической форме, и ничего не работает, значок загрузки продолжает вращаться навсегда, и если я нажму кнопку добавления новой строки, это не сработает.

это то, что я получаю в консоли

Uncaught Error: Syntax error, unrecognized expression: #tblinvsalidasdetprods-{$i}-cod_producto 
at Function.Sizzle.error (jquery.js:1468) 
at Sizzle.tokenize (jquery.js:2125) 
at Sizzle.select (jquery.js:2546) 
at Function.Sizzle [as find] (jquery.js:869) 
at jQuery.fn.init.find (jquery.js:2792) 
at jQuery.fn.init (jquery.js:2909) 
at jQuery (jquery.js:75) 
at HTMLDocument.<anonymous> (create:1389) 
at fire (jquery.js:3187) 
at Object.fireWith [as resolveWith] (jquery.js:3317) 

но если удалить [{$ I}] из моего кода он работает

<?= $form->field($newmddet, 'cod_producto')->widget 
          (
           Select2::classname(), 
           [ 
            'data'   => ArrayHelper::map 
            (
             TblInvProductos::find() 
             ->Where(['cod_empresa'=>$codEmpresa,'cod_estatus'=>'1']) 
             ->OrderBy(['cod_prod_visible'=>SORT_DESC]) 
             ->all(), 
             'cod_producto','NomProdConcat' 
            ), 
            'language'  => 'es', 
            'options'  => ['placeholder' => 'Producto'], 
            'pluginOptions' => 
            [ 
             'allowClear' => false 
            ], 
           ] 
          ) 
          ->Label(false); 
         ?>