Yii新手在这里 我已经尝试过多次尝试在CGRIDVIEW中以简单易懂的方式包含Ajax / JS函数, 代码基本上是
'click'=> "function (){
$.fn.yiiGridView.update('news-grid', {
type:'POST',
url:$(this).attr('href'),
success:function(data) {
$('#AjFlash').html(data).fadeIn().animate({
opacity: 1.0
}, 3000).fadeOut('slow');
$.fn.yiiGridView.update('news-grid');
}
})
return false;
}“
在您看来,最简洁,最有效的方式是什么? 感谢您的时间 !!!
答案 0 :(得分:0)
我不知道,但我没有看到必须强制网格在单个操作上更新两次,我也不喜欢包含我的javascript。根据我的需要,有几种方法,为了这个答案,你会看到最简单的方法:
在单独的文件中创建一个全局对象:
//app.js
var App = {
updateSomething: function () {
$.post(
$(this).attr('href'),
success:function(data) {
$('#AjFlash').html(data).fadeIn().animate({
opacity: 1.0
}, 3000).fadeOut('slow');
$.fn.yiiGridView.update('news-grid');
}
);
return false;
}
};
您可以通过调用CCLientScript::registerScriptFile
从控制器中包含该文件Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl."js/app.js");
在你的网格上:
'click'=> "js:App.updateSomething",
有更好的方法,但对于希望拥有某种组织的js初学者来说,这更为简单。