2017-03-23 223 views
0

我有一個應用程序使用yii2框架。 我正在嘗試使用select選項(下拉選擇),並使用Kartik Select2PHP:設置第二個下拉選項基於第一個下拉選擇選項使用kartik Select2

這是我的選擇選項 enter image description here

的觀點在你上面的圖片可以看到我已經兩個選擇的選擇,但我的條件。這是條件。

我的第一個下拉選項(事務ID)包含2個選項,有

  1. 購買

,如果用戶選擇1. Buy,第二個下拉選項(付款方式)將顯示

  1. 現金
  2. 作爲選項的電子貨幣交易 ,並且如果用戶選擇2. Sell,將僅顯示1. Cash作爲選項。

如何使用Kartik Select2做到這一點?

任何幫助將被折衷。

感謝。

+0

會需要您已有的相關代碼。 – bassxzero

回答

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); 
相關問題