我正在尝试使用按键上的pjax更新yii2网格视图,就像默认情况下在Yii2网格视图中搜索适用于模糊或更改事件。
我正在寻找在keypress上覆盖此功能。
任何帮助将不胜感激。感谢。
答案 0 :(得分:2)
您应该执行以下操作:
这是一个简单的工作示例:
var input;
var submit_form = false;
var filter_selector = '#grid-id-filters input';
$("body").on('beforeFilter', "#grid-id" , function(event) {
return submit_form;
});
$("body").on('afterFilter', "#grid-id" , function(event) {
submit_form = false;
});
$(document)
.off('keydown.yiiGridView change.yiiGridView', filter_selector)
.on('keyup', filter_selector, function() {
input = $(this).attr('name');
if(submit_form === false) {
submit_form = true;
$("#grid-id").yiiGridView("applyFilter");
}
})
.on('pjax:success', function() {
var i = $("[name='"+input+"']");
var val = i.val();
i.focus().val(val);
});
查看:
<?php \yii\widgets\Pjax::begin(['id' => 'pjax-id']) ?>
<?= GridView::widget([
'id' => 'grid-id',
'dataProvider' => $dataProvider,
'filterModel' => $filterModel,
'columns' => [
'id',
'title'
]
]);?>
<?php \yii\widgets\Pjax::end(); ?>