2017-03-23 15 views
0

yii2フレームワークを使用するアプリケーションがあります。 選択オプション(ドロップダウン選択)を使用しようとしていますが、Kartik Select2を使用しています。 PHP:kartikを使用して最初のドロップダウン選択オプションに基づいて2番目のドロップダウンオプションを設定するSelect2

この

は、私は2つの選択オプションをした見ることができます上記の写真は私の選択オプション enter image description here

の図であるが、私は条件をしました。これが条件です。

私の最初のドロップダウンオプション(トランザクションID

  1. 購入があり、2つのオプションが含まれている
  2. 売る

、ユーザーが1. Buy、2番目のドロップダウンオプション(を選択した場合お支払い方法)が表示されます

  1. 現金
  2. 電子マネー取引 をオプションとし、ユーザが2. Sellを選択した場合は、1. Cashのみをオプションとして表示します。

どのように私はKartik Select2を使用してそれを行うことができますか?

すべてのヘルプは評価されます。

ありがとうございました。

+0

既に関連するコードが必要になります。 – bassxzero

答えて

0

要件に応じて、最初のドロップダウンに基づいて2番目のドロップダウンオプションを更新する必要があります。まずドロップダウンのIDを割り当て、最初のIDは最初のドロップダウン、2番目のIDは2番目のドロップダウンになります。最初のドロップダウン変更イベントでコードの下にコードを追加してください。

// 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); 
関連する問題