php – 使用自定义文本字段过滤CGridView

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 使用自定义文本字段过滤CGridView脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要使用自定义文本字段过滤CGridView.我有自定义dataPRovider(CsqlDataProvider),我返回并填充表.表很好,但对我来说似乎很痛苦的是过滤它.我花了几个小时试图解决这个问题并且支持很差.
我看到有一些jquery方法用于更新CGridView,它需要’data’参数,其值我不知道如何格式化.这是我在/ create文件中我需要这个东西的地方.

PHP

<?PHP
Yii::app()->clientScript->registerScript('seArch',"
$('.search-form form').submIT(function(){
    $.fn.yiiGridView.update('studentiSaSmjeraData',{
        data: $(this).serialize(),-----------> this should be changed to get data From my text input using GET I guess,but I dont kNow the format
    });
    return false;
    });
");
?>

考虑搜索表单的HTMLPHP

<div class="search-form">
        <p>
            Pretraga po broju indeksa: 
        </p>
        <?PHP $form=$this->beginWidget('CActiveForm',array(
            'action'=>Yii::app()->createUrl($this->route),'method'=>'get',)); ?>
        <div class="row">
            Broj indeksa: <input tyPE="text" class="br_ind" name="br_ind" id="br_ind" value=""></input>
        </div>
        <div class="row buttons">
            <?PHP echo CHtml::submitButton('Search'); ?>
        </div>
        <?PHP $this->endWidget(); ?>
</div>

dataProvider中我希望将此文本与之比较的列称为“br_ind”.

编辑:
似乎输入字段名称和id也必须对此做一些事情(它们应该采用某种特定的格式).我的问题是 – 数据不是来自任何特定模型.它是通过表产品和两个表的一些附加约束获得的,所以我没有特定的模型来使用过滤器或任何在Yii中具有(afaik)支持的模型.但我想要的东西看起来很简单,但对我来说却变成了噩梦.关于函数参数的文档非常糟糕.
希望有人能提供帮助.任何人碰到这个并无法解决它?

$.fn.yiiGridView.update()在幕后使用jQuery的ajax函数(如果为网格启用了ajax更新).您可以查看 details on the data parameter的jQuery文档以及可以传递给.ajax()的其他选项.

正如您当前所做的那样使用$(this).serialize()应该使jQuery将br_ind = whatever_the_value_is添加为对服务器的GET请求的查询字符串参数(再次假设您正在使用GET,没有看到使用POST的理由或另一个动词,但没有提供足够的信息).使用浏览器的开发人员工具验证所请求的URL和响应内容.

然后是服务器是否正在正确处理请求.您没有提供任何细节,所以我无法帮助您.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 使用自定义文本字段过滤CGridView全部内容,希望文章能够帮你解决php – 使用自定义文本字段过滤CGridView所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。