簡體   English   中英

yii2 - 如何在 javascript 中設置 kartik select2 值

[英]yii2 - How to set kartik select2 value in javascript

我嘗試在 javascript 操作中為 kartik select2 設置值,但仍然沒有運氣。 這是我在視圖文件中的代碼:

<div class="col-xs-6">
    <?= $form->field($model, 'item_id')->widget(kartik\select2\Select2::className(), [
        'data' => \yii\helpers\ArrayHelper::map(\app\models\ItemProduction::find()->all(), 'id', 'name'),
        'options' => ['placeholder' => 'Select item'],
        'pluginOptions' => [
            'allowClear' => true,
        ],
    ]) ?>
</div>

和我的 javascript 代碼是這樣的

$(document).on('click', '.select-row', function(){
    // get id from custom button
    var id = $(this).attr('data-id');
    $.get('../ticket-timbangan/get-ticket', {id : id}, function(data){
            var data = $.parseJSON(data);        
            alert(data.item_id);
            $('#pengirimanproduksi-ticket_id').val(data.id);                
            $('#select2-pengirimanproduksi-item_id-container').val(data.item_id).trigger('change');

            $('#pengirimanproduksi-bruto_tbg').val(data.bruto);
            $('#pengirimanproduksi-tara_tbg').val(data.tara);
            $('#pengirimanproduksi-remark').val(data.remark);
    });
    $('#modalTicketList').modal('hide');        
});

這是我檢查 kartik select2 元素

<span class="select2-selection__rendered" id="select2-pengirimanproduksi-item_id-container"><span class="select2-selection__placeholder">Select item</span></span>

我試試這個代碼$('#select2-pengirimanproduksi-item_id-container').val(data.item_id).trigger('change'); 但它什么也沒改變。 請指教。 謝謝。

select2 的第一個 id 是錯誤的。

$('#select2-pengirimanproduksi-item_id-container')

不要與此混淆,並根據您的視圖名稱使用常規的,就像我的$('#pengirimanproduksi-item_id').val(your_value).trigger('change')應該工作。

只是閱讀 select2 文檔。

你可以給你自己的id:

  'options' => ['placeholder' => 'Select item','id' => 'your_id'],

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM