我在YII列表视图上有一个ajaxfilter。当我在复选框列表中选择一个项目时,一切正常:ajax调用vacature / index并给出'vacature'我在控制器中处理的正确ID,所以这很好。 (vacature /索引?vacature = 13)
现在,当我取消选中相同的项目时,它会执行完全相同的调用,因此它会传递已更改项目的ID。我只需要它不传递取消选择项的id和字符串为空。
提前致谢!
echo CHtml::beginForm(CHtml::normalizeUrl(array('vacature/index')), 'get', array('id'=>'filter-vacature'))
echo CHtml::checkBoxList('niveau', (isset($_GET['niveau'])) ? $_GET['niveau'] : '',
CHtml::listData(Lov::model()->findAllByAttributes(array('wat'=>'opleiding')), 'id', 'item'),
array('class'=>'niveau','template'=>'<span class="checkbox-columns">{input} {label}</span>', 'separator'=>''))
$('.niveau').change(function(){
niveau = $('.niveau').serialize();
$.fn.yiiListView.update(
'ajaxListView',
{data: niveau}
);
});
答案 0 :(得分:1)
我添加了一个比较来检查字符串是否为空,并传递工作空值:
$('.niveau').change(function(){
niveau = $('.niveau').serialize();
if(empty(niveau))
{
niveau = 'niveau%5B%5D=0';
}
$.fn.yiiListView.update(
'ajaxListView',
{data: niveau}
);
});