我正在使用kartik咆哮,我想通过ajax成功展示咆哮
我努力了
这是 javascript 代码:
$.post({
url: "forwardpr", // your controller action
dataType: 'json',
data: {keylist: keys,user:userdata},
success: function(data) {
console.log(data);
//$.pjax.reload({container:'#forward-grid'});
$.growl( data.growl );
},
error: function(err){
alert(err);
console.log("server error");
}
});
这是 Controller 代码:
$growl = [
'title' => "Group members updated.<hr>",
'icon' => 'glyphicon glyphicon-ok-sign',
'message' => "Successifully updated.",
'showSeparator' => true,
];
echo json_encode(['response'=>"Successifully forwarded pr(s)", 'growl' => $growl ]);
最佳答案
如果看到TypeError: $.growl is not a function
,则表明您尚未将所需文件包括在 AppAsset.php 文件中。
要解决此问题,请转到 Assets /AppAsset.php 文件并添加:
public $css = [
// ... Something else might be here
'css/jquery.growl.css',
];
和
public $js = [
// Something else might be here
'js/core.js',
];
由于缺少
.js
文件,因此在控制台中存在该错误(TypeError: $.growl is not a function
)。但是,您还必须添加.css
文件,因为没有它,即使可以工作,您也不会看到咆哮声。