Причина оказалась в том, что pjax берёт данные с текущего url, если не указать явный. В моём случае нужные данные находятся в другом контроллере (не в том, который показывает это представление). Можно поменять так:
let href = '/some/data';
$.pjax.reload({container:'#data-grid-view', url:href, push:false});
Это работает, но pjax игнорирует push = false, когда явно указан параметр url. Но это можно обойти так:
$.pjax({
url: '/some/data',
container : '#data-grid-view',
push : false,
});
Как видно, вызывается $.pjax(), а не $.pjax.reload(), но работает как reload().