[英]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.