我有一个使用 yii2 框架的应用程序。我正在尝试使用选择选项(下拉选择),并且我使用 Kartik Select2。
这是我选择选项的视图:
在上面的图片中,您可以看到我有两个选择选项,但我有条件。这就是条件。
我的第一个下拉选项(交易ID)包含2个选项,它们是:
如果用户选择
1. Buy
,第二个下拉选项(付款方式)将显示
1. Cash
时才会显示 2. Sell
作为选项。如何使用 Kartik Select2 做到这一点?
根据您的要求,您需要根据第一个下拉列表更新第二个下拉选项。首先为下拉菜单分配 id,第一个 id 将是 first-dropdown,第二个 id 将是 secondary-dropdown。在第一个下拉更改事件中添加以下代码。
// 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);