留言簿

我要留言
留言搜索

2016-05-08 19:28  浮云

杨老师好,想问一个问题就是aspnetpager和repeater一起使用的时候,怎么样让repeater翻到最后一页时数据不足10条也显示10条呢?就是不足的留空。
我用的dataset + pagedatasource的方式弄的。
回复:您好,您可以通过当前页索引和总页数判断是否是最后一页,如果是就取最后十条数据绑定即可,这个aspnetpager本身没有直接关系,谢谢!

2016-05-07 20:37  门门

杨老师您好:
想问个问题,在点击分页刷新页面的时候 想指定下拉到网页的某一个地方,意思就是点击下一页或者某页的时候在URL后面加类似 #biaoti2
备注:在做网站的时候经常会遇到banner很高,产品在banner下面,分页在最下面  往往把页面拉到最下面,一点下一页 就跑到最上面去了,导致看不到产品
回复:您好,锚点无法通过url参数的方式添加,只能在客户端用脚本控制,不知道您用哪种分页方式,这样的效果我还没实现过,也不知道是否可以实现。谢谢!

2016-05-07 17:50  小磊

MVC泛域名解析的时候报错,不用就是好的。怎么回事
回复:抱歉,不清楚您在说什么?哪个控件?什么错误?谢谢!!

2016-05-04 11:31  土豆

您好
  我用的Ajax.Pager分页控件,列表页面有一个下拉框的筛选条件,下拉框默认选中其中一项   然后我再选择下拉框中的全部筛选条件 这样 分页控件的pagecount还是之前的数据 没有变  分页就不能点击了 就是因为 pagecount还是之前选择了某一项后的数据 我每次筛选后都是重新赋值的
回复:您好,没有任何代码,从您的描述中无法看出是什么问题,需要调试检查才行,请仔细参考一下Ajax分页的例子,看看您的用法是否正确。谢谢!

2016-05-04 10:19  jakey

在使用FirstPageRouteName遇到个情况。不知道算不算BUG直接上代码吧
[Route("note/{id:int}", Name = "firstNote")]
        [Route("note/{id:int}-{cid?}-{page?}", Name = "Note")]
        public ActionResult FirstPageUrl(int id = 1, int cid = 0, int page = 1)
        {
            return View(DemoData.AllArticles.OrderByDescending(a => a.PubDate).ToPagedList(page, 5));
        }
<a href="@Url.RouteUrl("Note", new { id = 5,cid=1,page=1})" title="首页Url SEO">先点我再点分页</a>

@Html.Pager(Model, new PagerOptions { PageIndexParameterName = "page", RouteName = "Note", FirstPageRouteName = "firstNote" })

问题来了,最好生成首页html的代码为/note/5/?cid=1  这显然不符合设置FirstPageRouteName生成的代码,求解答
回复:您好,这不是bug,而是您的路由的问题,本身和MvcPager没有关系,首页的路由定义中不应该包含页索引这个参数,因为MvcPager会在第一页时从路由参数中去掉页索引参数以方便SEO,您可以参考一下帮助和示例中的说明。谢谢!

2016-05-03 19:15  土豆

您好 
   加载列表如果有筛选条件,且列表会根据某一个条件过滤,假如说根据这个条件过滤后只有一条数据,这样分页的pagecount=1,然后我选择全部,显示全部的数据,但是分页的pagecount还是等于1,这个问题能解决么?多谢!!
回复:您好,很抱歉不太明白您说的意思,不知您用哪个控件?用什么分页方式?pagecount是什么参数?如果您用的是AspNetPager,重新查询后需要重新设置RecordCount属性值。谢谢!

2016-04-22 14:16  yaoyao

杨老师:
您好。我使用mvcpager,使用ajax来控制查询加载表单
js 代码
$("#btn_search").click(function () {
        //alert("ddd");
        var form = $("#searchForm_user");
        $.ajax({
            type: "POST",
            async: "false",
            url: "/Account/AjaxSearchPost",
            data: form.serialize(),
            dataType: "html",//格式是html
            success: function (data) {
                //alert("dzz");
                $("#usertable").html(data);//替换成新的数据
            }
        });
    });
-------------------------------------------------------------------------
html代码
index.cshtml
<div id="usertable">
                @Html.Partial("_userTable",Model)
            </div>
---------------------------------------------------------------------
_userTable.cshtml
@model PagedList<UserModel>
@Html.Partial("_userTableView", Model)
<div><div style="float:left;width:50%">
    @*共 @Model.TotalPageCount 页 @Model.TotalItemCount 条记录,当前为第 @Model.CurrentPageIndex 页*@
        <strong>共 @Model.TotalItemCount 条记录</strong>     
</div>
@Ajax.Pager(Model,new PagerOptions{ActionName="AjaxSearchPagePost",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",
    HtmlAttributes = new Dictionary<string, object>{{"style","float:right"}}
    },new MvcAjaxOptions{UpdateTargetId="usertable",HttpMethod="Post",DataFormId = "searchForm_user"})
</div>
------------------------------------------------------

_userTableView.cshtml
@model PagedList<UserModel>
<table>
略
</table>

-----------------------------------------------------
AccountController.cs

[HttpPost]
        public ActionResult AjaxSearchPost(string userid, string username, string orgid, int id = 1)
        {
            List<UserModel> list = new List<UserModel>()
回复:您好,您的代码太长了,留言长度有限制,请不要帖出太多代码。谢谢!

2016-04-21 23:00  黎先生

而且本来是?号的
现在变成了#page=2
回复:您好,#后边是Ajax分页时加的hash值,?后边是url分页时加的参数,您需要了解两种分页方式的工作原理。谢谢!

2016-04-21 22:58  黎先生

杨老师救我。。
http://bbs.csdn.net/topics/391939127
这是我的提问地址
回复:您好,问题解决了就好,一般问题请多看看示例和文档。谢谢!

2016-04-20 22:14  marlon

杨老师,我仿照这段代码写得,PageIndexBoxId 和GoToButtonId 都设置了,但是下拉框还是取不到值,版本是3.0的
<div class="row" style="height:80px">
        <div class="col-md-8">
            @Html.Pager(Model, new PagerOptions { PageIndexParameterName = "id", NumericPagerItemCount = 5, 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", PageIndexBoxId = "pid", GoToButtonId = "gtb"})

        </div>
        <div class="col-md-4">
            <div class="input-group" style="width:120px;margin:20px 0">
                <select id="pid" class="form-control input-sm">
                    
                </select>
                <span class="input-group-btn"><button class="btn btn-primary btn-sm" id="gtb">跳转</button></span>
            </div>
        </div>
    </div>
回复:您好,不知道您说的取不到值是什么意思?是下拉框没有填充吗?如果是这个问题,您需要检查是否正确注册了MvcPager的客户端脚本插件,以及当前页面上是否有脚本错误。请按F12用浏览器开发者工具调试检查。谢谢!
;