В версии yii версии 1.14 мы использовали
CHtml :: ajaxlink
для ajax вызов, о чем в yii2?
Вы можете сделать ссылку ajax как
Html::a('Your Link name','controller/action', [ 'title' => Yii::t('yii', 'Close'), 'onclick'=>"$('#close').dialog('open');//for jui dialog in my page $.ajax({ type :'POST', cache : false, url : 'controller/action', success : function(response) { $('#close').html(response); } });return false;", ]);
Вы можете легко создавать и комбинировать все такие клиентские помощники для вашей потребности в отдельных файлах JS. Используйте новые функции AssetBundle и AssetManager с объектом View в Yii2, чтобы управлять этими активами и как они загружаются.
Кроме того, встроенные ресурсы (JS / CSS) могут быть зарегистрированы во время выполнения из представления. Например, вы можете четко имитировать функцию ajaxLink с помощью встроенного javascript. Однако рекомендуется, если вы можете объединить, где это возможно, клиентский код (JS / CSS) в отдельные файлы JS / CSS и загрузиться через AssetBundle. Заметьте, что больше нет необходимости в CClientScript:
$script = <<< JS $('#el').on('click', function(e) { $.ajax({ url: '/path/to/action', data: {id: '<id>', 'other': '<other>'}, success: function(data) { // process data } }); }); JS; $this->registerJs($script, $position); // where $position can be View::POS_READY (the default), // or View::POS_HEAD, View::POS_BEGIN, View::POS_END
$.get( "' . Url::toRoute('controller/action') . '", { item: $("#idoffield").val()} ) /* to send the parameter to controller*/ .done(function( data ) { $( "#lists" ).html( data ); })
и дать список id для div
<div id="lists"></div>
для дальнейшего посещения https://youtu.be/it5oNLDNU44
<?=yii\helpers\Url::toRoute("site/signup")?>