我正在使用Yii,它是jQuery UI Datepicker小部件。
我在CGridView过滤选项中使用它。当CGridView完成ajax调用时,它将调用afterAjaxUpdate
event。
问题是我的JUI Datepicker在我的Web上都有自定义设置,所以我不能只是这样做,$('.picker').datepicker();
因为以前的所有选项都会丢失。
有什么办法可以使用相同的选项重新初始化JUI Datepicker?
html.php | 扩展CHtml
public static function datePicker($options) {
return Yii::app()->controller->widget(
'zii.widgets.jui.CJuiDatePicker',
CMap::mergeArray(
[
'class' => 'picker',
],
$options
),
true
);
}
view.php
$this->widget(
'ext.GridView',
[
'columns' => [
[
'name' => 'date',
'filter' => Html::datePickerField([
'name' => 'Model[date]',
]),
],
],
]
);
您可以使用将日期选择器分配给所需字段的功能:
<script>
function setDatePicker()
{
$('.picker').datepicker({
//Your desired options
});
}
</script>
然后,afterAjaxUpdate
在每个gridview中调用此函数:
'afterAjaxUpdate' => 'js:function(){setDatePicker();}'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句