3

所以我为我的一个 Yii 项目设置了分页,并使用CListView达到了预期的结果。出于安全性和可读性的目的,我将 actionParams 函数配置为仅映射到$_POST参数。

现在我的问题是,当我点击任何可排序字段或页面链接时,它实际上是GET的数据。如何将其更改为POST

4

1 回答 1

3

我不知道它是否能满足您的需求,但您可以通过 JavaScript 手动触发 ajax 更新:$.fn.yiiListView.update('list-id',{type: 'POST'});. 在第二个参数中,您还可以发送数据和其他 ajax 选项,例如:$.fn.yiiListView.update('list-id',{type: 'POST',data:{ex_var: 'TEST'}});.

但是要使用它,您必须将上述内容绑定到寻呼机的单击事件。

另一种解决方案是编辑 jquery.yiilistview.js(您可以在 framework/zii/widgets/assets/listview 中找到它)。转到更新函数所在的第 82 行并编辑其选项,例如:

options = $.extend({
type: 'GET', //<- change this to POST
url: $.fn.yiiListView.getUrl(id),
    ...

});

您还必须刷新资产文件夹。但请记住,它会改变所有 CListViews 的行为 :)

问候。

于 2012-05-14T08:11:43.700 回答