在 Yii2 Kartik Select2 小部件中,如何对选择事件进行 ajax 调用?

Posted

技术标签:

【中文标题】在 Yii2 Kartik Select2 小部件中,如何对选择事件进行 ajax 调用?【英文标题】:In Yii2 Kartik Select2 widget how to make an ajax call on select event? 【发布时间】:2017-08-15 11:31:29 【问题描述】:

在 yii2 的 select2 小部件中,我们如何从小部件向控制器中的函数进行 ajax 调用: 场景是我需要为一个表创建一个自定义 ID,该 ID 取决于两个下拉列表值和 select2 下拉列表的选择事件,我需要获取记录并构造 ID 并将新创建的 ID 的值放入提交的表格。 我只是在从 select2 下拉小部件进行 ajax 调用时遇到问题

【问题讨论】:

= $form->field($model, 'ComplexDetails_complexdetailsId')->widget(Select2::classname(), ['language' => 'de', 'data' => $data_complex,//[1 => "First", 2 => "Second", 3 => "Third", 4 => "Fourth", 5 => "Fifth"], 'options' => ['placeholder ' => 'Select Complex ...'], 'pluginOptions' => [ 'allowClear' => true, ], 'pluginEvents' => [ "select2:select" => "function() document.getElementById(' a').value=this.value ", ], ]); ?> 【参考方案1】:

尝试以下操作:

您可以使用select2:select事件进行ajax调用。

echo $form->field($model, 'state_1')->widget(Select2::classname(), [
    'data' => $data,
    'options' => ['placeholder' => 'Select a state ...'],
    'pluginOptions' => [
        'allowClear' => true
    ],
    'pluginEvents' => [
       "select2:select" => "function()  // function to make ajax call here ",
    ]
]);

【讨论】:

以上是关于在 Yii2 Kartik Select2 小部件中,如何对选择事件进行 ajax 调用?的主要内容,如果未能解决你的问题,请参考以下文章

yii2 kartik select2 小部件不显示列表的第一个元素

Yii2 在“select2”小部件上需要验证规则

Yii2 Kartik Select2 多个标签输入字符串错误

在 Kartik Select2 小部件中向下滚动时加载越来越多的数据

如何从 Select2 Widget Yii2 将多个值保存到数据库

如何在 Yii2 中将带有 kartik-Select2 小部件项目的选择保存到 DB?