留言簿
留言成功,请等待站长审核,谢谢支持!
2014-01-05 21:29 小左
你好,对mvc不是很熟悉 想请问怎么把这部分代码做成“部分视图”?@Html.Pager(Model, new PagerOptions { PageIndexParameterName = "pageindex", ShowPageIndexBox = true, FirstPageText = "首页", PrevPageText = "上一页", NextPageText = "下一页", LastPageText = "末页", }) 直接放在部分视图里面这个Model参数会提示不能动态调度。没有名为Pager的适当方法。已经引用了命名空间,并且如果直接在视图中使用没任何问题啊。 或者在部分视图里面定义一下model也可以,但是部分视图是公用的 怎么能第一一个相同的model呢 是吧? 比如加入这一句就可以了: @model PagedList<Clients>
回复:您好,Model可以不是PagedList或IPagedList类型的对象,但您必须把这个对象传递给MvcPager,如果您不想用Model,可以用ViewData,比如在controller中设置 ViewBag.PagedList=//要分页的PagedList对象,然后在PartialView中可以这样:@Html.Pager((PagedList)ViewBag.PagedList....。谢谢!
2014-01-05 20:49 Starye
带有查询条件的分页怎么做呢,分页查询条件丢失,跟着示例做还是不行…… 前台代码:点击搜索AJAX条用后台获取数据分页方法。 $.get('@Url.Action("IndexDataList")', { pageIndex: 1, queryStr: queryStr }, function (data) { $('#LogList').html(data); }) 后台代码: public ActionResult Index(string queryStr = "", int pageIndex = 1) { PagedList<SysLog> list = logBLL.GetLogList(queryStr, pageIndex); if (Request.IsAjaxRequest()) { return PartialView("_LogList", list); } return View(list); } public PartialViewResult IndexDataList(string queryStr, int pageIndex = 1) { PagedList<SysLog> list = logBLL.GetLogList(queryStr, pageIndex); return PartialView("_LogList", list); } 调试断点,发现分页时默认走的是Index方法,条件字符串空,怎么把条件传过来呢?
回复:您好,Ajax查询分页时不需要写任何客户端Javascript提交代码,只需要正确设置MvcPager的相关属性即可,不知道您是如何设置和使用MvcPager的?请仔细看一下示例项目的源代码,尤其是MvcPager的设置部分。谢谢!
2014-01-04 19:56 Felix
您好: 最近将开发改成 VS2013,在有使用分页元件的页面会出现以下错误 錯誤: Syntax error, unrecognized expression: select#ctl00$ctl00$ContentPlaceHolder1$ListContentPlaceHolder1$AspNetPager1_input 版本是:7.4.5 我是使用IE11,除错会进到browserLink内,不知您是否有遇到此问题?
回复:您好,不知道您用的是哪个版本的VS2013?我记得beta还是rc的时候有一个bug,就是启用browserlink会导致webresource.axd生成的脚本文件变成空白,因此会出现脚本错误,正式版中已经解决了这个问题,请您检查一下。谢谢!
2014-01-04 12:44 ee
AspNetPager1.CurrentPageIndex要慢一拍啊,难道不应该点击页码后CurrentPageIndex就已经更新了和 e.NewPageIndex一样了么,在pagechanging中加AspNetPager1.CurrentPageIndex = e.NewPageIndex; 会不会再次触发事件啊。
回复:您好,您使用了错误的事件处理程序,PageChanging 事件是当前页索引CurrentPageIndex改变之前发生,也就是这个事件发生时CurrentPageIndex还没有改变,只有在PageChanged事件发生时CurrentPageIndex才会改变。谢谢!
2014-01-03 19:33 wsl
你好,最近在研究你的MVCPager,发现你的源代码MvcPager.js的开头是function ($),少了一个(,应该是这样才对吧,(function ($)?
回复:您好,是的,正确的应该是(function($),是本站在复制源代码制作页面时可能不小心把最前面的括号删除了,现已修改。非常感谢您的指正!
2014-01-03 13:07 悟饭
涛哥新年快乐,祝您生活幸福
回复:谢谢,新年快乐!!
2014-01-02 13:23 hanbin
感谢涛哥,是的,可以了。 问题回顾,Request.IsAjaxRequest()取值一直为false。后跟踪发现少了一个js文件,在页面添加@{Html.RegisterMvcPagerScriptResource();}之后可以了,并且该方法要在jquery.unobtrusive-ajax.min.js之前,jquery引用文件之后,避免其他人也出现同样错误,特意留言。
回复:非常感谢您的支持!
2014-01-02 11:44 l_yj19
确实是禁用了vs,谢谢! 这控件做得很不错,我确定要用你的这分页控件,改天网银充值后再给你付款(虽然只是点意思,但这是对你继续维护好控件的支持),如果在使用过程中有不清楚的,还得请你帮忙!
回复:您好,如果您不需要修改版权等信息而使用商业版的话,是不需要付费就可以免费使用的。谢谢!
2014-01-02 10:56 l_yj19
你好,我下载并用了你的分页控件,有些问题想请教你。 AspNetPager1.RecordCount的值首次访问没问题,但如果ispostback访问的话,得不到值,为什么呢? if (!IsPostBack) { files fl = new files();//访问数据库的类 int rc = (int)fl.GetRN();//获取数据行数的方法 AspNetPager1.RecordCount = rc; } 如果是回传访问,AspNetPager1.RecordCount 就没有值了,我不知道AspNetPager1.RecordCount 的值首次访问后有没有写cookie?我试着将rc写入cookie,但是数值的value不会写。 protected void ODS_Selecting(object src, ObjectDataSourceSelectingEventArgs e) { if (!e.ExecutingSelectCount) { e.Arguments.StartRowIndex = AspNetPager1.StartRecordIndex; e.Arguments.MaximumRows = AspNetPager1.PageSize; } }
回复:您好,RecordCount的值保存在ViewState中,不是cookie,如果回发后这个值没有了,那很可能是您禁用了ViewState导致的,请检查。谢谢!
2014-01-02 10:46 张康
杨老师你好: 我的项目是mvc4.5的,现在需要做一个post提交的分页。我用的是您的mvcpager,fileversion:2.0.0.1 版本的(http://www.webdiyer.com/mvcpager/demo/ajaxsearchhtmlpost/)。 我的代码是: @using (Html.BeginForm("MainProductList", "ProductList", new { id = "" }, FormMethod.Post, new { id = "formData" })) { //数据 } //分页。 @Ajax.Pager(Model, new PagerOptions { PageIndexParameterName = "pageindex", PagerItemsSeperator = "", CurrentPagerItemWrapperFormatString = "<span class=\"current\">{0}</span>", PageIndexBoxType = PageIndexBoxType.DropDownList, ShowGoButton = false }, new MvcAjaxOptions { HttpMethod = "Post", DataFormId = "formData" }, new { id = "flickrpager", style = "width:80%;" }) //对应action方法: [AcceptVerbs(HttpVerbs.Post | HttpVerbs.Get)] public ActionResult MainProductList(string AttributeName, string sortName, int? pageindex) { //逻辑 } 以上是我的主要代码。 但是我用post提交不执行。我用chrome调试,看network的请求方式始终是get。 请问我需要注意哪些问题。才能成为post提交方式。 我的邮箱是:842598029@qq.com
回复:您好,您的代码看起来没有问题,您需要仔细调试检查一下看是否是页面中其它地方的代码,如绑定了事件的客户端脚本等导致该表单被以get的方式提交或者在提交时直接跳转了?谢谢!