我有一个DropDown列表。 我写了代码,但它没有用。 请帮我解决一下:
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) }' ] );
我也想发送选定的数据,不知道在哪里写。
在控制器中我有这个动作
public function actionA_action() { $data = "TTT"; return $data; }
现在当我在DropDown列表中选择一些东西时,我的test_div
没有任何test_div
?
更新感谢Mihai P.现在我正在使用此代码
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 ) }']); ?>
HTML以下列方式形成
Please Choose item 1 item 2
但是当我在调试中选择一些东西时,这个字符串会突出
item 2
并且有一个错误说
Uncaught SyntaxError: Unexpected token }
最后更新
我在这段代码的最后一个字符串上添加了一个结束括号,其中有两个正在关闭,你可以看到,这就是问题所在。 Semicolumn也将是一个加号,但我已经测试了代码工作没有它确定。 问题在于结束。
'onchange'=>'$.post( "'.Yii::$app->urlManager->createUrl(["users/A_action"]).'",function(data){ $("#test_div").html( data ); })']);
好吧,我相信你有一个javascript错误。 实际上你应该也有很多。
你这样做
'onchange' => '$.post(Yii::$app->urlManager->createUrl . "users/A_action"), function(data) { $("#test_div").html(data) }'
你实际上并没有调用Yii :: $ app-> urlManager-> createUrl,你只是将它用作字符串。
你可能需要类似的东西
... ['onchange' => '$.post("'.Yii::$app->urlManager->createUrl(["users/A_action"]).'", function( data ) { $("#test_div").html( data ); })']);
简单添加一个JS块,它更干净:
registerJs(" jQuery(function($){ $('select[name=Adrop]').on('change', function(){ $.post(Yii::$app->urlManager->createUrl . 'users/A_action'), function(data) { $('#test_div').html(data) } }); });");?>
只需通过这些代码,您就可以了解其工作情况
需要了解更多jQuery教程分享Yii2 Ajax。从dropdown视图中发送到控制器,并在接收数据时执行一些操作,都可以关注jQuery技术分享栏目—计算机技术网(www.ctvol.com)!
$(document).ready(function () { $(document.body).on('change', 'yourid', function () { var val = $('yourid': selected').val(); if(val == 'I' ) { something } else if(val == 'B' ){ something } }); });
以上就是jQuery教程分享Yii2 Ajax。从dropdown视图中发送到控制器,并在接收数据时执行一些操作相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/jquerytutorial/981342.html