Search 按键上的Yi2网格视图pjax搜索
我正在尝试使用按键上的pjax更新yii2网格视图,就像默认情况下yii2网格视图搜索在模糊或更改事件上工作一样 我正在寻找什么来覆盖按键上的这个功能Search 按键上的Yi2网格视图pjax搜索,search,gridview,yii2,keypress,pjax,Search,Gridview,Yii2,Keypress,Pjax,我正在尝试使用按键上的pjax更新yii2网格视图,就像默认情况下yii2网格视图搜索在模糊或更改事件上工作一样 我正在寻找什么来覆盖按键上的这个功能 任何帮助都将不胜感激。谢谢。您应该执行以下操作: 禁用过滤器输入上的默认提交事件和绑定键控事件 更新后聚焦活动输入 下面是一个简单的工作示例: var input; var submit_form = false; var filter_selector = '#grid-id-filters input'; $("body").on('bef
任何帮助都将不胜感激。谢谢。您应该执行以下操作:
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);
});
视图:
它第一次工作正常,但在第一次调用后没有触发ajax。您是使用此构造$(document)。on('keyup',…),还是使用此$(filter_selector)。单击(func(){})?我使用了您在回答中提到的方法。由于.on('keyup',filter_selector,function(){也不会有绑定问题..在第一次ajax调用它的非回调成功“pjax:success”后出现了一个问题事件因此提交形式值保持为true。知道原因吗:success event not trigger我已经在一个实时项目的答案中再次检查了我的代码,它工作了。您是否将js代码包装在$(document).ready(function(){});?可能您的控制器或模型中有错误。尝试绑定pjax:error回调并启用错误显示。
<?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(); ?>