Yii默认ajax搜索重定向

Yii默认ajax搜索重定向,yii,Yii,如果从默认的yiiajax搜索中只找到一个结果,我想重定向到它的view操作。如何触发重定向?。(这类似于谷歌的“我感觉很幸运”选项) 其中$model->customer()返回网格也使用的数据提供者。回答我自己 我最终使用了javascript hack,因为我找不到合适的方法来实现它 在我的CGridView中,我使用了AjaxUpdate之后的 $this->widget('zii.widgets.grid.CGridView', array( 'dataProvider'

如果从默认的yiiajax搜索中只找到一个结果,我想重定向到它的view操作。如何触发重定向?。(这类似于谷歌的“我感觉很幸运”选项)

其中$model->customer()返回网格也使用的数据提供者。

回答我自己

我最终使用了javascript hack,因为我找不到合适的方法来实现它

在我的CGridView中,我使用了AjaxUpdate之后的

$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider' => $dataProvider,
    'summaryCssClass'=>'summary fr',
    'id'=>'order-grid',
    'afterAjaxUpdate'=>'function(id, options){ if($("#order-grid tbody tr").length == 1 && $("#order-grid tbody tr:first td").length > 1) {window.location = $("#order-grid tbody tr td:first a").attr("href");}}',
    'columns' => array()
));

希望这对某人有所帮助。

更多的细节将有助于回答,例如您尝试了什么?你说的是什么默认搜索?你必须编写一个自定义javascript函数,用服务器的结果更新CGridView,如果结果数等于1,则重新定义页面。这很容易,如果除了呈现的HTML之外,您还发送一个结果计数和/或URL以重定向到。
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider' => $dataProvider,
    'summaryCssClass'=>'summary fr',
    'id'=>'order-grid',
    'afterAjaxUpdate'=>'function(id, options){ if($("#order-grid tbody tr").length == 1 && $("#order-grid tbody tr:first td").length > 1) {window.location = $("#order-grid tbody tr td:first a").attr("href");}}',
    'columns' => array()
));