欢迎光临 Rick 's BLOG
日志首页  | C# .Net编程  | 原创作品  | 生活点滴  | C\C++相关  | 多媒体相关※ERMP  | VB相关  | 其它运维与编程  |  留言簿
给 CodeIgniter 4 增加SQL执行数量的统计功能 CodeIgniter4中传统路由模式控制器退回默认方法时有可能会丢失第一个参数
未知  CodeIgniter4 分页器增加输入框输入页码后跳转的功能
[ 发布日期:1年前 (2023-11-15) ]   [ 来自:本站原创 ] [分类:其它运维与编程]

现在大部分前端模版的分页中都有文本框,输入页码后进行跳转的界面。
CodeIgniter4的默认分页模版没有文本输入框的跳转功能。

准备在框架的基础上自行实现这个功能。


首先需要自定义分页器的模版
1、修改分页器的配置文件 app\Config\Pager.php,执行自定义的模版页面
[复制到剪贴板]

public array $templates = [
        
'default_full'   => 'pager_full',
        
'default_simple' => 'CodeIgniter\Pager\Views\default_simple',
        
'default_head'   => 'CodeIgniter\Pager\Views\default_head',
    ];
 




2、然后在view目录中新建一个 pager_full.php 文件。将 CodeIgniter\Pager\Views\default_full.php的文件代码拷贝进去,或者自己重新实现一个。
在 pager_full.php 适当位置加入文本框和跳转代码
[复制到剪贴板]

<li><input class="pull-left" style="margin-top: 2px;" type="text" name="custompage" size="1" title="输入页码,按回车快速跳转" value="" onkeydown="if(event.keyCode==13) {window.location='<?=$pager->getTemplatePage()?>'.replace('%7Bpg%7D',this.value);}" /></li>
 




3、在 system\Pager\PagerRenderer.php 中增加函数  getTemplatePage 
[复制到剪贴板]

/**    
     * @return string 返回含page信息的URL,page值 由 {pg} 占位
     */
    
public function getTemplatePage(){
        
        
$uri = clone $this->uri;

        if (
$this->segment === 0) {
            
$uri->addQuery($this->pageSelector'{pg}');
        } else {
            
$uri->setSegment($this->segment'{pg}');
        }

        return 
URI::createURIString(
            
$uri->getScheme(),
            
$uri->getAuthority(),
            
$uri->getPath(),
            
$uri->getQuery(),
            
$uri->getFragment()
        );
    }
 



引用通告地址 (0):
复制引用地址https://www.rickw.cn/trackback/261
复制引用地址https://www.rickw.cn/trackback/261/GBK
[ 分类:其它运维与编程  | 查看:272 ]

暂时没有评论,快来发表一个评论吧。
发表评论
作者:   用户:[访客] 
评论:

表  情
禁止表情 | 禁止UBB | 禁止图片 | 识别链接
对不起,你没有权限上传附件!
验证:
 
PoweredBy R-Blog V1.00 © 2004-2024 WWW.RICKW.CN, Processed in second(s) , 7 queries    京ICP备17058477号-5