控件上页码显示原理,以10页为例

代码如下:

<div class="fenye_div0">
                @{
                    //当前页面
                    var pageNow = 1;
                    //页面总数
                    var pageCount = 0;
                    if (ViewData["page"] != null)
                    {
                        pageNow = Convert.ToInt32(ViewData["page"]);
                    }
                    pageCount = Convert.ToInt32(ViewData["pageCount"]);
                    var proPage = pageNow <= 1 ? 1 : pageNow - 1;
                    var nextPage = pageNow + 1 > pageCount ? pageCount : pageNow + 1;
                }
                <a id="fenye_pre" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@proPage‘,@proPage)" href=" javascript:void(0);">&lt; 上一页</a>
            </div>
            @if (pageCount <= 10)
            {
                //如果总页数小于10,就全部显示
                for (int i = 1; i <= pageCount; i++)
                {
                    //如果是当前页,就显示动态的标记样式,循环输出每个页码,每次点击都要为请求页面传递一个页码
                    if (i == pageNow)
                    {
                        <div class="fenye_div1 fenye_active"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                    else
                    {
                        <div class="fenye_div1"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                }
            }
            else if (pageNow + 4 >= pageCount)
            {
                //如果最大上限大于总页数,就只是显示最后十条
                <div class="fenye_div6"><strong>...</strong></div>
                for (int i = pageCount - 9; i <= pageCount; i++)
                {
                    if (i == pageNow)
                    {
                        <div class="fenye_div1 fenye_active"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                    else
                    {
                        <div class="fenye_div1"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                }
            }
            else if (pageNow < 7)
            {
                //如果当前页码小于7,就只显示前十条
                for (int i = 1; i <= 10; i++)
                {
                    if (i == pageNow)
                    {
                        <div class="fenye_div1 fenye_active"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                    else
                    {
                        <div class="fenye_div1"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                }
                <div class="fenye_div6"><strong>...</strong></div>
            }
            else
            {
                //如果没有达到上限值显示的是中间这些页面,比如页面一共10页码,就可以前四后五的显示,一共五页码就可以前三后二的显示,取中间页
                <div class="fenye_div6"><strong>...</strong></div>
                for (int i = pageNow - 5; i <= pageNow + 4; i++)
                {
                    if (i == pageNow)
                    {
                        <div class="fenye_div1 fenye_active"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                    else
                    {
                        <div class="fenye_div1"><a href="javascript:void(0);" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@i‘,@i)">@i</a></div>
                    }
                }
                <div class="fenye_div6"><strong>...</strong></div>
            }

            <div class="fenye_div0"><a id="fenye_next" onclick="MedicalCase.GetListByPage(‘@Url.Content("~/MedicalCase/GetMedicalImageCaseList?page=")@nextPage‘,@nextPage)" href=" javascript:void(0);">下一页 &gt;</a></div>
            <div class="fenye_div7">
                共 @pageCount  页,到第
            </div>

//,
    ////根据关键字获得列表 pageIndex:当前页面 pageCount:一共页数
    //GetPageIndex: function (strPageIndex, pageCount) {
    //    //可显示数
    //    var pageNum = 10;
    //    var pageIndex = parseInt(strPageIndex);
    //    var pageNowStyle = pageIndex - 1 == 0 ? 1 : pageIndex - 1;
    //    if (pageIndex == null || pageIndex == ‘‘) {
    //        pageIndex = 1;
    //    }
    //    var pageHtml = ‘<div class="fenye_div0"><a id="fenye_pre" href="/MedicalCase/Index">&lt; 上一页</a></div>‘;
    //    if(pageCount<=pageNum){
    //        for (var i = 1; i <= pageCount; i++) {
    //            var ac = "";
    //            if (i == pageIndex)
    //            {
    //                ac = "fenye_active";
    //            }
    //            pageHtml += ‘<div class="fenye_div1 ‘ + ac + ‘"><a href="javascript:void(0)" onclick=MedicalCase.pageChange(this)>‘ + i + ‘</a></div>‘;
    //        }
    //    }
    //    else if (pageIndex + 4 >= pageCount){
    //        pageHtml += ‘ <div class=\‘fenye_div6\‘><strong>...</strong></div>‘;
    //        for (var i = pageCount - 9; i <= pageCount; i++){
    //            var ac = "";
    //            if (i == pageIndex) {
    //                ac = "fenye_active";
    //            }
    //            pageHtml += ‘<div class="fenye_div1 ‘ + ac + ‘"><a href="javascript:void(0)" onclick=MedicalCase.pageChange(this)>‘ + i + ‘</a></div>‘;
    //        }
    //    }
    //    else if (pageIndex < 7) {
    //        for (var i = 1; i <= 10; i++) {
    //            var ac = "";
    //            if (i == pageIndex) {
    //                ac = "fenye_active";
    //            }
    //            pageHtml += ‘<div class="fenye_div1 ‘ + ac + ‘"><a href="javascript:void(0)" onclick=MedicalCase.pageChange(this)>‘ + i + ‘</a></div>‘;
    //        }
    //        pageHtml += ‘ <div class=\‘fenye_div6\‘><strong>...</strong></div>‘;
    //    }
    //    else {
    //        pageHtml += ‘ <div class=\‘fenye_div6\‘><strong>...</strong></div>‘;
    //        for (var i = pageIndex - 5; i <= pageIndex + 4; i++) {
    //            var ac = "";
    //            if (i == pageIndex) {
    //                ac = "fenye_active";
    //            }
    //            pageHtml += ‘<div class="fenye_div1 ‘ + ac + ‘"><a href="javascript:void(0)" onclick=MedicalCase.pageChange(this)>‘ + i + ‘</a></div>‘;
    //        }
    //    }
    //    pageHtml += ‘ <div class="fenye_div0"><a id="fenye_next " href="javascript:void(0)">下一页 &gt;</a></div><div class="fenye_div7">共‘ + pageCount + ‘ 页,当前第<input id="fenye_curr" data-total=‘ + pageCount + ‘ type="text" value="1" size="1" /> &nbsp;<span id="fenye_form_span" style="color:rgb(127,127,127);">页</span></div>‘;
    //    $(‘.fenye_div‘).html(pageHtml);

    //},
    //pageChange: function pageChange(name) {
    //    var _this = name;
    //    var pageIndex = $(_this).html();
    //    MedicalCase.GetPageIndex(pageIndex, 13, _this);
    //}

时间: 2024-12-11 17:57:36

控件上页码显示原理,以10页为例的相关文章

VC/MFC 当鼠标移到控件上时显示提示信息

VC/MFC 当鼠标移到控件上时显示提示信息 ToolTip是Win32中一个通用控件,MFC中为其生成了一个类CToolTipCtrl,总的说来其使用方法是较简单的,下面讲一下它的一般用法和高级用法. 一般用法步骤:  添加CToolTipCtrl成员变量 m_tt.  在父窗口中调用EnableToolTips(TRUE);  在窗口的OnCreate(或者其他适当的位置)中向ToolTip中添加需要显示Tip的子窗口,并同时指定相应的显示字串CToolTipCtrl::AddTool(pW

OpenCV获取摄像头视频并在MFC的Picture控件上显示

分为两步:OpenCV获取摄像头数据+图像在Picture上显示 第一步:OpenCV获取摄像头数据 参考:http://www.cnblogs.com/epirus/archive/2012/06/04/2535190.html http://blog.sina.com.cn/s/blog_6dbe9bdb0100nii7.html http://blog.csdn.net/augusdi/article/details/8762961 #include "stdafx.h" #in

对话框上动态控件的创建、在Picture Control控件上显示图片

1  MFC对话框之上的动态控件的创建 对话框上的控件是MFC类的一个具体对象. 当在对话框之上使用静态控件时,可以根据类向导来为每个控件添加消息.响应函数以及变量. 当需要在对话框中动态的创建某个控件时,就需要手动来代替类向导为动态控件添加消息.响应函数及变量. 动态创建控件时,可按照以下步骤进行: (1) 明确控件所属于的类 每一个控件都对应着一个类(例如按钮Button所属于的类为CButton). 如,在程序中我们需要用CButton类创建一个具体的按钮对象,并用函数指示它在对话框之上的

记录下UIButton的图文妙用和子控件的优先显示

UIButton的用处特别多,这里只记录下把按钮应用在图文显示的场景,和需要把图片作为按钮的背景图片显示场景: 另外记录下在父控件的子控件优先显示方法(控件置于最前面和置于最后面). 先上效果图: 1.当在某个地方既需要显示图片,还需要显示文字,另外还要有点击功能的时候,这时按钮是个很好的选择. 按钮中的图片和文字的距离可以自由调整,图片的也可以上下左右翻转.日常项目中像这些场景都是很容易碰到的. 按钮图文设置.图文位置移动.按钮中图片翻转示例代码: /** 测试图文并茂的按钮,图文移动 */

如何在双向绑定的Image控件上绘制自定义标记(wpf)

原文:如何在双向绑定的Image控件上绘制自定义标记(wpf) 我们的需求是什么? 答:需要在图片上增加一些自定义标记,例如:2个图片对比时,对相同区域进行高亮. 先上效果图: 设计思路 1.概述 1.通过TargeUpdated事件,重新绘制图片进行替换. 2.详细实现 1.我们先绑定ImageTargetUpdated事件. ? 1 <Image x:Name="DestImageControl" Source="{Binding Path=Source.Url,

Android控件上添加图片

项目中有一个点赞功能,点赞的小图标添加在点赞列表旁边,在xml里可以进行设置,也可以在代码中进行绘图. 下面是两种方法的设置: 1.xml里:一些控件:button.textView等等里面有个属性是android:drawableLeft 就可以将pic设置到text的左边.good.... 2.代码中: TextView txtlikedList = new TextView(this.getContext()); Drawable drawable= getResources().getD

XE6 FMX之控件绘制与显示

FMX是一套UI类库,就相当于以前的VCL,但是相比VCL来说,支持了跨平台,同时也直接内部支持了各种特效动画甚至3D的效果,如果效率性能上来了,这个类库还是很有前景的.这次我主要学习的就是一个FMX窗体是如何绘制并显示出来的,相比较于VCL,有哪些不同之处,以及一个FMX程序的启动运转的最简单剖析.至于各种特效,动画,以及3D等,以后再慢慢的去啃食,贪多嚼不烂. 新建一个FireMonkey的HD Desktop Application,IDE会自动建立一个工程,进入工程,可以发现FMX的程序

C#中“类似GridView等控件”的前台显示与后台数据变化之间的关系

最近用dev的treelist,gridcontrol等控件,这些控件显示数据都需要进行DataTable等数据源的绑定,而经理又要求可以随时更改其中的内容,刚开始总是不断的刷新控件.更新控件的数据源(我这里就需要从数据库重新取数据)感觉特别麻烦. 这两天在更改代码时发现了一些我觉的很快捷的地方,在这里提一下: ※这里我的数据源都是以DataTable来做的 1.当从数据库取出数据并赋予datatable之后,接下来只要不再去连接数据库,这时对datatable的所有操作都不会影响数据库内的数据

MFC9.0 Outlook控件的标题显示无法修改

这是我在开发中遇到的问题,现记录下来,以便帮助你们. 不想看废话的可以只看最后三行,但你会错过很多. 俗话说的好啊,"Wise men learn by other men's mistakes; fools by their own." -------------------------------------------分割线首次登场--------------------------------------------- 可能有的童鞋英语不太好,看不懂上面的东东,好吧我活跃下气氛