留言簿

我要留言
留言搜索

2016-09-08 09:44  tim

首先非常感谢作者的贡献,这个分页控件还是做得很不错的!
我想提两个问题(用的是最新版本):
1.使用Ajax分页跳转到某页,当开启浏览器历史记录支持时(EnableHistorySupport=true),如果刷新页面的话,会触发两次请求,第一次请求是页索引等于1,第二次请求是页索引等于当前页索引(即url上的hash(#))

2.使用HtmlForm搜索(Get),当页面需要两个相同的分页控件控制同一个partialview时(有时需要在内容上下两部分放置同一个分页控件),会触发两次相同的请求。

望回复,谢谢!
回复:您好,您说的两个问题其实都是第二个问题,Ajax分页时,如果当前页不是第一页而刷新当前页面,分页数据是会被加载两次的:页面刚打开时加载的是默认的第一页数据(非Ajax模式),而MvcPager的Ajax插件在页面加载后判断到当前页非第一页时,会重新通过Ajax加载当前页数据并替换掉已加载的第一页数据,这其实不是MvcPager的问题,因为第一页数据是页面打开时默认显示的数据,不是通过MvcPager加载的,这个问题没法避免,除非第一页的默认数据也通过MvcPager用Ajax来加载,暂时还没有提供这样的功能,不过这个问题只有您刷新页面时才会出现,分页的过程中不会加载两次。谢谢!

2016-09-07 13:31  andy99jay

杨老师!你好!我用的是AjaxForm搜索(Post)分页。
我的ajax分页导航中确是/Search/Search_Doc?PageIndex=__PageIndex__  ,导致不能正常访问
回复:您好,不知道您说的是所有页索引按钮导航链接全变成了PageIndex=__PageIndex__这样,还是只有分页容器标签的data-urlformat属性值是这样?如果是后者,这是正常的,因为这里的__PageIndex__只是点位符而已,在分页时会被替换掉的,至于您的url为什么会变成/Search/Search_Doc?PageIndex=__PageIndex__这样的格式,那是因为没有找到匹配的路由,所以默认所有的url参数都会被附加在url的?之后。谢谢!

2016-09-06 17:03  章鱼

杨老师,您好,想请问一下,如何修改手动输入页码的按钮提交方法呢?比如,用户输入了一个页数,然后点击跳转,如何修改这个跳转方法?谢谢您!
还有就是为什么我输入PageIndexBoxId 这个的时候会报错呢?不能识别
回复:您好,您需要说明用的是哪个分页控件以及什么版本?另外报错的时候详细的错误信息是什么?谢谢!

2016-09-02 10:05  梅

杨老师!你好!我用的是AjaxForm搜索(Post)分页。
我现在的问题是第一次加载数据的分页没有问题,当我的URL中
id不是1时,查询后分页无效(且URL没有变化)!!!
但是我看你的demo是查询过后URL的id为-1!!!
请问这是什么问题???
回复:您好,不知道您用哪个版本?是否自己修改了源代码?请用F12浏览器开发者工具调试一下看是否有脚本错误才导致出现这样的问题?谢谢!

2016-08-31 10:24  良才

用ajaxpager做无刷新分页的时候,能不能保持URL不变
不要出现#pageindex这些东西
回复:您好,如果Url不变就没法获取当前页索引,也就是无法实现分页,不知道您为什么会有这样的需求?谢谢!

2016-08-31 09:28  韩萌真

杨老师您好,我现在遇到的问题是,用MvcPager删除之后怎样用ajax调用此页面刷新?
【
@model  PagedList<System.Data.DataRow>
<table class="table table-striped table-bordered">
    <tr>
        <th>中英文</th>
        <th>作品类型名称</th>
        <th>操作</th>
    </tr>
    @foreach (var dr in Model)
    {
        <tr>
            <td>@dr["StatusId"]</td>
            <td>@dr["TypeName"]</td>
            <td>
                <a href="#" onclick="UpdateDialog('@dr["TypeId"]')">编辑</a>
                <a href="#" onclick="DeleteDialog('@dr["TypeId"]')">删除</a>
            </td>
        </tr>
    }
</table>

<div>
    <div style="float:left;width:50%">共 @Model.TotalItemCount 条记录,@Model.CurrentPageIndex  / @Model.TotalPageCount 页</div>
    <div class="text-center">
        <nav>
            @Ajax.Pager(Model, new PagerOptions { PageIndexParameterName = "id", ContainerTagName = "ul", CssClass = "pagination", CurrentPagerItemTemplate = "<li class=\"active\"><a href=\"#\">{0}</a></li>", DisabledPagerItemTemplate = "<li class=\"disabled\"><a>{0}</a></li>", PagerItemTemplate = "<li>{0}</li>", Id = "bootstrappager" }, new MvcAjaxOptions { UpdateTargetId = "WorkType", HttpMethod = "Post", DataFormId = "searchForm" })
        </nav>
    </div>
</div>
】
【】里是走过的页面,数据也能查出来,数量也是对的,但是就是不在页面上展现出来。,或者换个问题就是说怎样调用【搜索】功能的方法(因为搜索功能也是走这个页面但是可以将数据加载出来)。请指教,不胜感激!
回复:您好,Ajax搜索是通过能搜索表单form绑定submit事件处理程序实现的,您可以试试在删除之后调用搜索表单form的submit()方法看是否可以实现您要的功能。谢谢!

2016-08-29 16:54  陈远扬

PageIndexBoxId为何不起作用?
回复:您好,您的问题描述太笼统,不知道您说的”不起作用“具体是什么现象?谢谢!

2016-08-29 14:32  Coder

你好,MvcCaptcha这个控件之前一直使用正常,但是表单的提交方式改为$.post通过ajax验证之后,如果验证码输入错误后台返回消息之后(只要经过后台),然后点击验证码图片,就无法刷新了,提示这个页面404错误:http://localhost:1258/_MvcCaptcha/MvcCaptchaImage?7eb81b89ee8042e98fce00e766701228&1472451945965

求解答,谢谢。
回复:您好,您直接输入http://localhost:1258/_MvcCaptcha/MvcCaptchaImage?7eb81b89ee8042e98fce00e766701228&1472451945965这个url能打开吗?如果确实不行,建议试试这个CaptchaMVC:http://captchamvc.codeplex.com/。谢谢!

2016-08-27 11:29  美洲狼

用的是mvcpager3.0 ajax分页,列表删除一条数据后,怎么刷新列表页?
回复:您好,既然是Ajax分页,删除应该也是Ajax方式吧?删除后用Ajax重新加载当前页数据,这和MvcPager是没有直接关系的。谢谢!

2016-08-26 16:12  测试

NumericButtonCount这个属性用了为啥不起作用?
还是默认10个。
回复:您好,我测试过没有问题,如果您设置NumericButtonCount属性不起作用的话,请注意检查属性名是否写错,另外当前AspNetPager是否使用了CloneFrom属性克隆了另一个AspNetPager,这种情况下,所有属性都会被被克隆的AspNetPager的相应属性覆盖,对当前AspNetPager设置任何属性都没有作用。谢谢!
;