我在视图中使用(CJui)日期选择器,以及它的外观,默认语言设置为"它"。如果我使用标准渲染功能渲染我的视图,它可以很好地完成布局。如果我使用renderPartial("viewName",$data,false,true)
渲染我的视图,则语言将设置为日语。为什么??? (皮肤的其他参数保持正确)
PS:分析输出代码,我注意到在renderPartial方法的情况下,为datepicker设置默认选项的javascript函数不会封装在jQuery(function($) { ... })
方法中......
答案 0 :(得分:0)
问题是,您必须在部分呈现的视图中注册您的语言环境。
对于简单的解决尝试以下:
在renderPartial之前添加以下代码:
Yii::app()->clientScript->scriptMap['jquery.js'] = false;
(或用于日期选择器的其他.js
文件。)
您也可以手动修复它。打开 jquery-ui-i18n.min.js 本地化文件或从jquery-ui网站获取。
例如,法语实例将如下所示:
Yii::app()->clientScript->registerScript('frDatepicker.js', "
$(document).ready(function(){
$.datepicker.regional['fr']={
closeText:'Fermer',prevText:'Précédent',nextText:'Suivant',currentText:'Aujourd\'hui',
monthNames:['Janvier','Février','Mars','Avril','Mai','Juin',
'Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
monthNamesShort:['Janv.','Févr.','Mars','Avril','Mai','Juin',
'Juil.','Août','Sept.','Oct.','Nov.','Déc.'],
dayNames:['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
dayNamesShort:['Dim.','Lun.','Mar.','Mer.','Jeu.','Ven.','Sam.'],
dayNamesMin:['D','L','M','M','J','V','S'],
weekHeader:'Sem.',dateFormat:'dd/mm/yy',firstDay:1,isRTL:false,
showMonthAfterYear:false,yearSuffix:''};
$.datepicker.setDefaults($.datepicker.regional['fr']);
});
", CClientScript::POS_READY);