留言簿

我要留言
留言搜索

2017-03-14 14:43  魏炜

按MvcPager 分页示例 — 应用CSS样式这个的源代码在2010+MVC4下无法运行,能给个这个无数据库的DEMO吗?另外,网站上下载的DEMO在vs 2010 sp1上说是不兼容的版本
回复:您好,现在的示例本来就有数据库版和无数据库版两种,但是项目是用VS 2013开发的,没有2010的,2010实在是太老了。谢谢!

2017-03-14 13:50  魏炜

按您的例子,我的.net 2010 MVC4环境下,那个分页的可以,但是跳转的下拉框里就是无法显示页数,您可以给个示例吗?
回复:您好,本站就有线上的示例和下载,不知道您要什么样的示例?

2017-03-14 11:51  陕北榆林娃

修改了两处js代码:
            //off
            $(this.updateTarget).off("click", pagerSelector + " a[data-pageindex]");

            $(this.updateTarget).on("click", pagerSelector + " a[data-pageindex]", function (e) {
                newPageIndex = $(this).data("pageindex");
                e.preventDefault();
                if (context.enableHistorySupport) {
                    context.__setPageIndex(context.pageIndexName, newPageIndex);
                } else {
                    context.__ajax(newPageIndex, { type: context.httpMethod, data: [] });
                }
            });

                        //off
                        $(context.updateTarget).off("click", context.goToButton);

                        $(context.updateTarget).on("click", context.goToButton, function () {
                            var newPageIndex = $(context.pageIndexBox).val();
                            context.goToPage(newPageIndex);
                        });
回复:您好,不知道您修改的代码解决了什么问题或者增加了什么功能?请说明一下。谢谢!

2017-03-13 17:24  刘一

老师你好 我是使用mvcPaper3.0在 bootstrap中的 modal中使用ajax分页  但是在modal中点击分页后 会弹出新的窗口 而不是在modal中更新数据,老师这个有方法解决吗
回复:您好,这个问题和MvcPager没有任何关系,我已很多年没用过modal dialog了,记得用showModalDialog方法打开的模态窗口,点击页面上的任何链接默认都会在新窗口打开,要解决这个问题,您需要在页面上head部分加入<base target="_self">才行。谢谢!

2017-03-13 09:59  jmu84xu

回复2017-03-04 09:55 的问题:
杨老师请看以下例子,
点击搜索后的url就是我所描述的情况:
<form action="/search" method="get">
    <input name="kw" placeholder="关键字" />
    <label>
    <input name="type" value="书籍" type="checkbox"  checked="checked"/>书籍
    </label>
    <label>
    <input name="type" value="电器" type="checkbox"  checked="checked"/>电器
    </label>
    <input type="submit" value="搜索" />
</form>
回复:您好,是有您说的把两同名参数合并到一块的问题,但这并不影响查询,我测试过用Request.QueryString["type"]完全可以取出这两个参数的值,是以逗号分隔的,参数中间的%2C是被url编码的逗号,用Request.QueryString取出后是正常的。谢谢!

2017-03-08 08:51  马艳艳

您说的那个脚本错误,我用开发者工具看过了,并没有,就是结果没出来,您方便看下代码吗?
这个是controller的:
public ActionResult Index2(int pageIndex=1)
        {
            List<User> list = PrepareUserList();
            int pageSize = 3;
            PagedList<User> aModel = list.ToPagedList(pageIndex, pageSize);
            if (Request.IsAjaxRequest())
            {
                return PartialView("_PartialPage2",aModel);
            }
            return View(aModel);
        }
这个是视图的:
@using Webdiyer.WebControls.Mvc
@model PagedList<MvcApplication1.Models.User>
<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>无刷新分页</title>
    <link href="~/Content/bootstrap.css" rel="stylesheet" />
    <script src="~/Scripts/jquery-1.9.1.min.js"></script>
    <script src="~/Scripts/jquery-1.9.1.intellisense.js"></script>
    <script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
</head>
<body>
    <a href="@Url.Action("Index","Home")">跳转到刷新分页</a>
    <div id="list">
        @Html.Partial("_PartialPage1", Model);
    </div>
        
</body>
@section scripts
{
    @{Html.RegisterMvcPagerScriptResource();}
}
</html>
这个是_PartialPage1.cshtml分部视图的:
@using Webdiyer.WebControls.Mvc
<script src="~/Scripts/jquery-1.9.1.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
@model PagedList<MvcApplication1.Models.User>

<div class="text-center">
    @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>"
}, new MvcAjaxOptions { UpdateTargetId = "list"})
</div>
@{ Html.RenderPartial("_PartialPage2"); }
这个是_PartialPage2.cshtml分部视图:
@using Webdiyer.WebControls.Mvc
@model Pa
回复:您好,您的视图看起来没有使用母版页,却用@section scripts { @{Html.RegisterMvcPagerScriptResource();} }这个节来注册MvcPager脚本插件,也就是这个插件没有正确注册,这就是导致不能Ajax分页的最主要原因。另外分部视图不应该再引用脚本,您引入了太多的jquery,有一种很混乱的感觉,请参考一下示例中的分部视图。谢谢!

2017-03-07 22:45  bsoco

你好 我的程序报错 $(...).initMvcPagers is not a function 是什么原因
回复:您好,从错误信息看,很可能是没有引入jquery脚本库或者jquery脚本库引入太迟导致的,请在MvcPager脚本注册之前引入jquery脚本库。谢谢!

2017-03-07 16:44  马艳艳

您好,我想问一下我的那个页面是按照您的Ajax分页来写的,可是出来的结果确还是页面带刷新。这个可能是什么原因呢?jquery.unobtrusive-ajax.js  也已经引用了
回复:您好,这无法猜出原因,很可能是页面上有脚本错误导致Ajax请求失败,请用F12浏览器开发者工具调试检查。谢谢!

2017-03-04 09:55  jmu84xu

杨老师你好:
我在.NTE MVC对于数组参数的传递是使用了多个相同key的url参数,比如多个相同name的checkbox被勾选。不能识别type=1,2,3为数组参数。或请老师指教正确的数组传参。
回复:您好,我不太明白您的意思,不知道您说的“不能识别type=1,2,3为数组参数”怎么理解?所有的url参数都是string类型的,没有数组参数,您需要获取参数值后自己解析。谢谢!

2017-03-03 09:24  jmu84xu

你好,Url内有数组参数时,分页链接疑问求助。
当页面链接为:
  http://host/Get?Name=name&type=1&type=2
翻页按钮(以第二页为例)链接为:
  http://host/Get?Name=name&type=1%2C2&page=2

有没有办法可以和页面链接格式一致?
回复:您好,我觉得这个问题应该是您的url参数的问题,url参数不应该重复,如果您的type参数要传递两个值,应该用类似于type=1,2这样,而不应该用两个type参数,这种方式在后台用Requet.QueryString["type"]也无法正确获取两个参数值,所以分页控件生成第二页url时会只保留一个。谢谢!
;