Yii2 Ajax .post al controlador desde la lista desplegable de vista y algunas acciones al recibir datos

Tengo una lista desplegable He escrito el código pero no funciona. Por favor ayúdame a arreglarlo:

echo $form->field($model, 'Adrop')->dropDownList( [ '' => 'Please Choose', '1' => 'item 1', '2' => 'item 2' ], [ 'onchange' => '$.post(Yii::$app->urlManager->createUrl . "users/A_action"), function(data) { $("#test_div").html(data) }' ] ); 

También quiero enviar datos seleccionados, y no sé dónde escribirlos.

En el controlador tengo esta acción.

  public function actionA_action() { $data = "TTT"; return $data; } 

Ahora, cuando selecciono algo en la lista test_div , no pasa nada en mi test_div 🙁

ACTUALIZACIÓN Gracias a Mihai P. ahora estoy usando este código

 field($model, 'Adrop')->dropDownList( [''=>'Please Choose','1'=>'item 1','2'=>'item 2'], [ 'onchange'=>'$.post( "'.Yii::$app->urlManager->createUrl(["users/A_action"]).'",function(data){ $("#test_div").html( data ) }']); ?> 

El HTML se forma de la siguiente manera.

  Please Choose item 1 item 2  

Pero cuando elijo algo en la depuración esta cadena se resalta

  item 2 

y hay un error diciendo

 Uncaught SyntaxError: Unexpected token } 

ACTUALIZACIÓN final

Agregué un corchete de cierre en la última cadena de este código, hay dos de ellos que se cierran ahora, como puede ver, y ese fue el problema. Semicolumn también será un punto a favor, pero he probado que el código funciona correctamente. El problema estaba en el corchete de cierre.

  'onchange'=>'$.post( "'.Yii::$app->urlManager->createUrl(["users/A_action"]).'",function(data){ $("#test_div").html( data ); })']); 

Bueno, estoy seguro de que tienes un error de javascript. En realidad, deberías tener muchos de ellos también.

Tu estas haciendo esto

 'onchange' => '$.post(Yii::$app->urlManager->createUrl . "users/A_action"), function(data) { $("#test_div").html(data) }' 

En realidad no estás llamando a Yii :: $ app-> urlManager-> createUrl, solo lo estás utilizando como una cadena.

Probablemente necesitas algo como

 ... ['onchange' => '$.post("'.Yii::$app->urlManager->createUrl(["users/A_action"]).'", function( data ) { $("#test_div").html( data ); })']); 

Simplemente agregue un bloque JS, es mucho más limpio:

 registerJs(" jQuery(function($){ $('select[name=Adrop]').on('change', function(){ $.post(Yii::$app->urlManager->createUrl . 'users/A_action'), function(data) { $('#test_div').html(data) } }); });");?> 

Simplemente pase por estos códigos, usted puede entender el funcionamiento

  $(document).ready(function () { $(document.body).on('change', 'yourid', function () { var val = $('yourid': selected').val(); if(val == 'I' ) { something } else if(val == 'B' ){ something } }); });