留言簿

我要留言
留言搜索

2015-07-30 15:50  jack

这是我的设置:
@Html.Pager(Model, new PagerOptions
          {
                PageIndexParameterName = "page",
                CssClass = "ui-page",
                Id = "pageBar",
                NumericPagerItemCount = 3,
                ShowFirstLast = false,
                NavigationPagerItemTemplate = "<a class=\"ui-page-turn\">{0}</a>",
                CurrentPagerItemTemplate = "<a class=\"z-on\">{0}</a>"
          })

为什么会多生成出一些html标签:<a class="ui-page-turn"></a>  这是多余的。

<div class="ui-page" data-invalidpageerrmsg="页索引无效" data-outrangeerrmsg="页索引超出范围" data-pagecount="4" data-pageparameter="page" data-pagerid="Webdiyer.MvcPager" data-urlformat="/history/index/194?page=__page__" id="pageBar"><a class="ui-page-turn">上页</a><a class="z-on">1</a><a href="/history/index/194?page=2">2</a><a href="/history/index/194?page=3">3</a><a href="/history/index/194?page=4">...</a><a class="ui-page-turn"></a><a href="/history/index/194?page=2">下页</a></div>
回复:您好,那是您设置的模板生成的代码,请参考帮助文档。谢谢!

2015-07-28 15:42  LL

老师,GoToPage方法不能刷新当前页
例如现在在第5页,我想刷新第5页。
或者有没有哪个属性能设置允许刷新当前页的?
回复:您好,很抱歉,没有这个方法,刷新当前页只能用浏览器的刷新按钮。谢谢!

2015-07-28 14:01  猛猛

MVCPager的页索引下拉框我按照你的示例把代码复制到我的视图中,打开后,显示了下拉框和跳 转按钮,但是下拉框是空的,这是什么 原因哪,是不是下拉框必须包含在Form  中才能用哪?我的网页只是展示内容,所以不需要form不需要form能用下拉列表吗,另外你的示例项目是mvc哪个版本呀,我是vs2010装了mvc3和mvc4都打不开。
回复:您好,页索引下拉框不需要放在form中,请检查您的代码检查相关属性是否设置正确,另外用开发者工具调试一下看当前页面上是否有Javascript错误,从而导致页索引绑定失败。谢谢!

2015-07-28 13:55  范盈川

杨大哥您好,我使用memcached缓存PagedList类型的数据集的时候,提示PagedList为序列化

请问这个怎么解决,或者说是我使用方法有错?

我把PagedList类型的数据集通过ToList()转换,可以保存在memcached中了

但是读取缓存的是时候,提示不能转换为PagedList类型
回复:您好,我没有用过memcached,也没碰到过这个问题,如果不行的话您可以在缓存时把PagedList分成多个对象缓存,比如总记录数、当前页索引以及当前页显示的数据分别缓存或用一个自定义对象,从缓存获取数据后再构造PagedList对象也可以。谢谢!

2015-07-25 11:38  提个功能扩充建议

在PagedList<T>里面添加一个默认值项,如下: 
       /// <summary>
        /// 默认值
        /// </summary>
        /// <returns></returns>
        public static PagedList<T> Defalt()
        {
            return new PagedList<T>(new List<T>(), 1,1);
        }
因为经常有这种引用情况:
            var myVar = "";
            if (string.IsNullOrEmpty(myVar))
            {
                return View();
            }
这时候View页面加载Model的判空处理会很烦人,绑定分页控件的Model也不能为null。

改造后,就可以这样用了:
if (string.IsNullOrEmpty(kw)){return View(PagedList<Goods>.Defalt());}
现在,页面就不用任何判空操作,或只根据Model.Count>0加载数据(用于加载“没有您要的结果。。。”这样的提示)
——我的Email:498576940@qq.com
回复:您好,您说的判空的情况我倒是没遇见过,不过您的建议很有采用价值,我会记录在项目ToDo列表中,适当时候升级一下。非常感谢,欢迎提出更多改进意见和建议!

2015-07-23 10:20  123ceshi

你好!我需要做一个网站的列表页(带分页功能的),不用表单,能给格参考吗?邮箱:546236467@qq.com.谢谢
回复:请看上一条回复,谢谢!

2015-07-23 10:17  我的博客

您好!我要做一个网站列表页(带分页功能的),不用表单,能不能给我一个参照?
回复:您好,示例项目就是一个完整的网站,请下载参考,谢谢!

2015-07-21 16:29   孤客

/projects.aspx?page=5&state=2 
将url规则重写成/projects?page=5&state=2
仅把.aspx去掉即可  可以使用这种规则吗   我在文档里没有找到解决方法  请杨老师指导一下
回复:您好,重写为任何地址都可以,至于重写的页面是否有效,这和您用的重写技术有关,和AspNetPager没有关系,因为他只负责生成url,谢谢!

2015-07-17 15:47  heekey

ShowDisabledPagerItems = false在使用过程中,结果为空返回结果list=0.报如下错误:
---------------------------------------------------------------------
 长度不能小于 0。
参数名: value
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.ArgumentOutOfRangeException: 长度不能小于 0。
参数名: value

源错误:


行 322:            }
行 323:            else
行 324:                sb.Length -= _pagerOptions.PagerItemsSeperator.Length;
行 325:            tb.InnerHtml = sb.ToString();
行 326:            /* 注册客户端脚本

-----------------------------------------------
源码:                    @Html.Pager(Model, new PagerOptions { AutoHide = false, ShowFirstLast = false,ShowMorePagerItems = false,ShowDisabledPagerItems = false, NumericPagerItemCount = 8, ContainerTagName = "ul", CssClass = "pagination", CurrentPagerItemWrapperFormatString = "<li class=\"active\"><a href=\"#\">{0}</a></li>", PagerItemWrapperFormatString = "<li>{0}</li>", FirstPageRouteName = "FoodNewsPageRou" }, "FoodNewsPageRou")
回复:谢谢您的反馈,我会进行测试确认,如果确实存在bug会及时升级修复。
===========================
补充:您好,请问您用的是哪个版本?2.0版已经没有PagerOption.PagerItemsSeperator这个属性了,谢谢!!

2015-07-17 11:13  jason

AspNetPager生成的分页代码在iphone6上面失效,<a href="javascript:;__doPostBack()">1</a> 这种格式的分页代码在iphone6是不起作用的,使用urlPaging的分页格式可以,但是搜索功能需要的是Post提交,用urlPaging的方式接收不到参数
回复:您好,__doPostBack()这样的代码是asp.net默认的回发机制,不是AspNetPager才有的,搜索可以用get方式将搜索条件通过url参数传递。谢谢!
;