PHP:使用kartik Select2基于第一个下拉选择选项设置第二个下拉选项

时间:2017-03-23 11:46:31

标签: php yii2 select2 kartik-v

我使用yii2框架的应用程序。 我尝试使用选择选项(下拉选择),然后使用 Kartik Select2

这是我的选择选项的视图 enter image description here

在上面的图片中,您可以看到我有两个选择选项,但我有条件。这是条件。

我的第一个下拉选项(交易ID )包含2个选项,有

  1. 如果用户选择1. Buy,则会显示第二个下拉选项(付款方式

    1. 现金
    2. 电子货币交易 作为选项,如果用户选择1. Cash,则会仅将2. Sell显示为选项。
    3. 如何使用Kartik Select2进行操作?

      任何帮助都会被贬低。

      感谢。

1 个答案:

答案 0 :(得分:0)

根据您的要求,您需要根据第一个下拉列表更新第二个下拉选项。首先为下拉列表指定ID,第一个ID将是第一个下拉列表,第二个ID将是第二个下拉列表。在第一个下拉列表更改事件中添加以下代码。

// get first dropdown value here
var firstDropdownValue = $("#first-dropdown").select2("val");


var $secondDropdown = $('#second-dropdown');

// get all second dropdown options
var options = $secondDropdown.data('select2').options.options;

// delete all options of the native select element
$secondDropdown.html('');

// build new items
var items = [];

items.push({
    "id": 1,  // value of option
    "text": 'Cash' // name of option
});

$secondDropdown.append("<option value=\"1\">Cash</option>");

// check the first dropdown value and add E-money option
if(firstDropdownValue == 1){
    items.push({
        "id": 2,
        "text": 'E-money'
    });

    $secondDropdown.append("<option value=\"2\">E-money</option>");
}

// add new items
options.data = items;
$secondDropdown.select2(options);