留言簿
留言成功,请等待站长审核,谢谢支持!
2014-08-13 10:14 无痕
杨老师好!一直使用您开发的分页控件。以前用过AspNetPager,感觉相当棒!现在初学Mvc,使用MvcPager时遇到一个问题,在前台页面中没有引入@model,仅有一个下拉列表框,点击项目时,通过JqueryAjax请求不同的controller获取data生成数据表,没有使用到@Html的方式,请问这种情况怎么使用您的MvcPager控件?或者这种情况有别的更好的方式吗?(可能就是相当于在同一页面通过点击不同链接在本页面显示不同的分页数据表)
回复:您好,很抱歉,不太明白您的意思,不过MvcPager和Model没有任何直接关系,至于您说的@Html,应该是指View的一个HtmlHelper属性,如果您连View也不使用,那肯定无法使用MvcPager,因为MvcPager就是HtmlHelper或AjaxHelper的一个扩展方法。谢谢!
2014-08-12 08:45 梦亦晓
杨老师您好:对于复杂多表连接的操作,我返回的是datatable,怎么结合MVCPAGER进行分页呢?
回复:您好,返回Datatable的话,可以参考示例中Datarow集合分页的例子。谢谢!
2014-08-11 14:21 杨环
杨老师你好,我最近想做一个关于新闻系统的网站,然后在实现分也时想使用ASPNetPager,但是我在网上查询了很多发现ASPNetPager都是使用C#的,问题是我的网站后台语言都是用的VB.NET,这样还可以使用ASPNetPager吗?
回复:您好,控件用什么语言编写和您的项目使用什么语言没有任何关系,用任何.net兼容的语言编写的控件都可以用在其它.net兼容的语言开发的项目中,所以您完全可以放心在您的项目中使用AspNetPager 。谢谢!
2014-08-09 22:19 蓝色梦魇
杨老师,您好: 我看您的代码:多个MvcPager显示在同一个页面,但是我自己做的有些问题,我的代码是: <div id="testdiv"> @{Html.RenderPartial("jorPartial1",Model.JorPapersList);} @Ajax.Pager(Model.JorPapersList, new PagerOptions { PageIndexParameterName = "id", ShowPageIndexBox=true, PageIndexBoxWrapperFormatString="跳转为{0}", PageIndexBoxType=PageIndexBoxType.DropDownList, ShowGoButton = false }, new MvcAjaxOptions { UpdateTargetId = "testdiv", EnablePartialLoading = true },null) </div> 当这个分页控件写在这个div里面的时候,在翻页的时候,出现的是空白页,内容全都消失了,如果放在div外面的时候,虽然能够正常跳转,但是 “ShowPageIndexBox=true, PageIndexBoxWrapperFormatString="跳转为{0}", PageIndexBoxType=PageIndexBoxType.DropDownList,”的跳转动作却无效,不知道这是什么原因?
回复:您好,您确认当前页面上只有一个id为testdiv的html元素吗?请用浏览器开发者工具调试一下看看分页控件在div中的时候,分页时返回的http响应内容是什么?当EnablePartialLoading = true时,将分页控件放在div之外会导致分页控件分页后不能重新加载,也就无法正常工作。谢谢!
2014-08-07 17:23 mvc菜鸟
使用mvcpager控件,在添加过mvcpager.dll,views的config中添加过<add namespace="Webdiyer.WebControls.Mvc"/>,视图中也添加了@using Webdiyer.WebControls.Mvc,为什么还会报这个错误:编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误消息: CS1928: “System.Web.Mvc.HtmlHelper<dynamic>”不包含“Pager”的定义,并且最佳扩展方法重载“Webdiyer.WebControls.Mvc.PagerHelper.Pager(System.Web.Mvc.HtmlHelper, Webdiyer.WebControls.Mvc.IPagedList, Webdiyer.WebControls.Mvc.PagerOptions)”的某些参数无效 源错误: 行 32: } 行 33: </table> 行 34: @Html.Pager(list, new PagerOptions { PageIndexParameterName = "id", ShowPageIndexBox = true, PageIndexBoxType = PageIndexBoxType.DropDownList, ShowGoButton = false }); 视图代码如下: @{ ViewBag.Title = "Show"; } @using MvcApplication1.Models @using Webdiyer.WebControls.Mvc @{ MvcApplication1.Models.Student m = ViewData["stu"] as MvcApplication1.Models.Student; } <h2>Show</h2> @{List<MvcApplication1.Models.Student> list = ViewData["list"] as List<MvcApplication1.Models.Student>;} <table> <tr> <td>ID号</td> <td>姓名</td> <td>年龄</td> <td>性别</td> <td>班级</td> </tr> @foreach (MvcApplication1.Models.Student ms in list) { <tr> <td>@ms.ID</td> <td>@ms.Name</td> <td>@ms.Age</td> <td>@ms.Gender</td> <td>@ms.Class.CName</td> </tr> } </table> @Html.Pager(list, new PagerOptions { PageIndexParameterName = "id", ShowPageIndexBox = true, PageIndexBoxType = PageIndexBoxType.DropDownList, ShowGoButton = false });
回复:您好,这个错误意思很明显,不是命名空间的问题,而是您的参数不对,在您引用的重载方法中,Html.Pager的第一个参数必须是IPagedList类型,也就是您的list参数不是一个IPagedList对象,而是一个dynamic动态类型,请检查。谢谢!
2014-08-07 14:58 周能达
求mvcpager的MVC5版本,还是有源码没有 MVC4的会出错
回复:您好,最新的MvcPager.2.0支持MVC5,我有很多Mvc5的项目都在用,而且本站就是用MVC5开发的,示例中用的MvcPager就是2.0,没有任何问题,不知道您说的具体是什么问题?谢谢!
2014-08-06 17:02 cnbank
您好,我是前面问你分页会多一个类似4bb794e5-9be8-40f1-b9b1-4e4f5746b66c=System.Web.Mvc.DictionaryValueProvider%601%5BSystem.Object%5D的串儿的问题的童鞋,我想你是误解我的意思了,csdn的问题不是我提的,只是搜索找到个类似的提问而已。而且我调用的重载方法是第九个。 @Ajax.Pager(Model.TotalRecordCount, Model.Rows, Model.Page, "TradeRecord", "Consume", null, new PagerOptions { PageIndexParameterName = "page", CurrentPagerItemWrapperFormatString = "<a href=\"?\" class=\"sel\">{0}</a>", ShowFirstLast = true, NumericPagerItemWrapperFormatString = "{0}", NavigationPagerItemWrapperFormatString = "{0}", MorePagerItemWrapperFormatString = "{0}", CssClass = "fy" }, null, new MvcAjaxOptions { UpdateTargetId = "list" }, null) 你看下我的参数有问题么,而且我说了分页是通过html.action()里面加了参数(和csdn那位仁兄的差不多)调用分页才会出现这个问题。 也就是说一般分页都是直接a页面调用一个分部页(数据列表)b处理的,但是现在是一个c页面里面通过html.action("a",new { id = "xx"})的方式调用就出现了那个链接。如果html.action里面不带参数也不会出现类似问题。谢谢您的耐心答复。
回复:您好,您调用的重载看起来没有问题,但我不太理解您后面的意思,您有具体的可以重复这个问题的例子可以发给我看一下吗?我的gmail邮箱名是webdiyer。谢谢!
2014-08-06 14:54 王苑
杨老师,您好 冒昧的问您一下 MvcPager分页控件 可以实现多个AjaxForm搜索(get)或是 AjaxForm搜索(post) 吗?谢谢!~
回复:您好,可以的,但要注意页索引参数和和查询参数不能相同,请参考示例中的多个MvcPager的例子,谢谢!
2014-08-06 13:16 尹贵龙
杨老师,我用的是你官网的demo; 过程如下: NoDbDemo文件夹下_Layout页面中 <li><a href="/NoDbDemo/AjaxSearchGet/" title="AjaxForm搜索(Get)">› AjaxForm搜索(Get)</a></li> 修改为 <li><a href="/NoDbDemo/AjaxSearchGet/?author=Webdiyer" title="AjaxForm搜索(Get)">› AjaxForm搜索(Get)</a></li> 然后运行,找到该示例 首次点击,地址为 http://localhost:17408/NoDbDemo/AjaxSearchGet/?author=Webdiyer 这时候点击第二页,地址为 http://localhost:17408/NoDbDemo/AjaxSearchGet/?author=Webdiyer#id=2 然后修改查询条件,作者的条件改为“杨涛”,点击搜索 地址变为 http://localhost:17408/NoDbDemo/AjaxSearchGet/?author=Webdiyer#id=-1; 这个时候看到红色显示的查询条件作者一栏为:杨涛 注意了,这是后再点击第二页,地址变为 http://localhost:17408/NoDbDemo/AjaxSearchGet/?author=Webdiyer#id=2 但是 查询条件作者一栏,红色显示的是:“作者:Webdiyer,杨涛 ” 而且仔细查看数据就会发现应该是作者为Webdiyer的数据 如有表述不清楚的可以联系我,qq:1069880905,真心求杨老师解决。。
回复:您好,这个问题应该是MvcPager.js插件在提交查询条件时没有清除原url中存在的相同条件而导致的,要解决这个问题,就需要在通过ajax提交查询条件前先检查当前url中是否存在相同的查询条件并对url做相应修改,但url中的参数并不一定附加在?之后,而是通过路由定义的,如url: mypage/aaa/ 这里的aaa就可能是路由参数author的值,而在客户端脚本中无法确认这是一个已存在的查询条件,所以在执行Get方式的Ajax查询时,只能将查询条件原样提交并附加在url中,所以在这种情况下,您只能用Ajax Post方式或普通表单的方式进行查询,而不能用Ajax Get方式查询。谢谢!
2014-08-04 09:53 古羽
杨老师你好,学习的是mvcpager,完全按照您的demo 操作的 可是 并没有实现局部无刷新效果。 @section Scripts{@{Html.RegisterMvcPagerScriptResource();}} 这句话 需要怎么操作啊!!我引用报错 我使用ajax那个方法 能不能留下联系方式QQ 之类的我好向您讨教下。我是菜鸟!!
回复:您好,这个问题基本可以肯定是脚本错误导致Ajax提交失败,请检查您引用的jQuery脚本库看路径是否正确,用浏览器开发者工具可以直接看到脚本错误的原因及所在行,推荐使用Chrome。谢谢!