Dans la version 1.14 nous avons utilisé
CHtml :: ajaxlink
pour appel ajax qu'en est-il dans yii2?
Vous pouvez faire un lien ajax comme
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;",
]);
Vous pouvez facilement créer et combiner tous ces assistants clients pour votre besoin dans des fichiers JS séparés. Utilisez les nouveaux AssetBundle et AssetManager fonctionnalité avec l'objet View dans Yii2, pour gérer ces actifs et comment ils sont chargés.
Sinon, les ressources en ligne (JS/CSS) peuvent être enregistrées au moment de l'exécution de l'intérieur de la vue. Par exemple, vous pouvez clairement simuler le Fonction ajaxLink utilisant un javascript intégré. Son cependant recommandé si vous pouvez fusionner autant que possible le code client (JS/CSS) en un fichier .__ séparé. Fichiers JS/CSS et chargés via AssetBundle. Notez qu'il n'y a plus de besoin d'un CClientScript plus:
$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 );
})
et donner des listes id pour div
<div id="lists"></div>
pour plus de visite https://youtu.be/it5oNLDNU44