【问题标题】:kohana search filter in the same view同一视图中的 kohana 搜索过滤器
【发布时间】:2011-03-03 16:07:48
【问题描述】:

我正在 kohana 建立一个虚拟商店,我想在产品列表中创建一个订单下拉过滤器。 订单下拉过滤器应按控制器中实现的不同订单显示产品。我的问题:我希望产品列表在同一个视图中完成,而不是在我选择下拉过滤器(订单 ascm 订单 desc 等)时更改页面

有什么解决办法吗?

谢谢!

【问题讨论】:

    标签: php javascript jquery view kohana


    【解决方案1】:

    将过滤器放入GETPOST 并在同一个控制器中检查它。您还可以考虑使用 javascript 方法,但允许 javascript 处理排序,但是对于大型数据集,这会损害性能。

    【讨论】:

    • 过滤器是一个下拉列表。我的意思是,当人们从下拉列表中选择一个选项时,我会执行排序操作。你建议我做一个js来验证从下拉列表中选择了哪个选项吗?控制器中的 get 和 post 应该怎么做?
    • 如果您使用 PHP,您可能有一个开关或其他东西来确定您如何排序,然后输出 SQL 语句。如果您想在 JS 中进行所有排序(小数据集,2000 条记录以下),请查看 datatables.net
    • 问题:我认为
      并在控制器中 $ordering = $_POST['ordering'];但我收到如下错误:注意:未定义的索引:排序(在控制器中)。这是为什么呢?
    • 在您的 index.php 中将 error_reporting(E_ALL); 更改为 error_reporting(E_ALL ^ E_NOTICE);
    【解决方案2】:

    您似乎想要一个非常酷的 AJAX 方法:

    class Ajax_Controller extends Controller {
        public function order() {
            $order = $someModel->order();
            echo json_encode($order);
            die();
        }
    
    }
    
    $.get('ajax/order', {more parameters here}, function(result){
        // use a Jquery table sorter here
    })
    

    【讨论】:

      猜你喜欢
      • 2014-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多