留言簿

我要留言
留言搜索

2015-09-15 17:13  猪猪侠

杨老师你好,我用MvcPager3.0做了一个AjaxForm(Post)搜索功能,有分页下拉选择框的,并设置了正确的PageIndexBoxId属性。
现在的问题是,按了搜索提交按钮后,PageIndexBox是空的没有任何选项,随便翻一页后,下拉框里才出现索引选项,请问是怎么回事?
另外如果搜索结果为空,下拉框没有方法隐藏。我试过用Javascript API来控制,但没有成功,好像Webdiyer.MvcPagers[0].pageCount值没有随着post动作改变。
老师能提供一个AjaxForm(Post)搜索 + PageIndexBox下拉框跳转的例子吗?有的话请发:724474528@qq.com,非常感谢!!

2015-09-12 16:36  Mr YOUNG

有没有办法不让这里/cp/default.aspx?p=2的default.aspx显示,直接显示/cp/?p=2,这样网址更简短
回复:您好,您可以试试URL重写。谢谢!

2015-09-09 11:00  Steven

你好,分页控件AspNetPager是否对.NET版本有限制?我是.NET Framework4.5.1, VS2013,添加时提示AspNetPager中没有可添加到工具箱上的组件。强行拖拽也不行。希望您能解答一下,谢谢。
回复:您好,应该没有限制,本站用的.net框架也是4.5版,而AspNetPager支持.net framework 2.0及以上所有版本,您可能没有选对工具箱,或者您拖的不是官方的AspNetPager程序集,请下载最新版的试试。谢谢!

2015-09-07 19:04  dodu

你好,杨老师,我在1.5就在使用你的mvcpager这个控件,之前不管是html还是ajax加载分页,都没有问题的,在我的新项目中使用的.net4.5,mvcpager已经3.0了,我就顺利把项目更新至最新版。可ajax功能失效了。我为了验证是不是程序设置的问题,专门新建了一个nodata的项目。可还是有问题。

先声明一下,我的项目都是用的vb.net来完成的。是不是针对vb.net的时候有些兼容的问题呢 ?
回复:您好,1.5版和3.0版差别非常大,3.0版ajax分页使用的是jquery插件,您需要用MvcPager自带的方法注册此插件才行,和用什么需要没有任何关系,请多看一下帮助文档和示例,谢谢!

2015-09-07 15:54  LL

老师,用 AjaxForm搜索(Get)的时候,如果第一次加载时默认带了查询条件,例如初始化一个时间段,出来的分页点击后,时间段会消失,看报文没有传递这个时间。

我尝试模仿手工查询,初始化页面后,用JQ的Click触发查询一次,参数也保存不了。

不带默认条件,分布是正常的。
回复:您好,ajax搜索是通过提交form表单实现的,您直接传递url参数是没用,您可以把参数保存在隐藏文本框中来传递,谢谢!

2015-09-04 20:02  苍穹

在MVC5网站下分页使用注意事项,在服务器上发布时,一定要把如下配置加上,否则会报如下错误:
 未能加载文件或程序集“System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。

配置节:<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-5.2.2.0" newVersion="5.2.2.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
回复:谢谢分享,如果用vs新建项目,这些配置都是默认的,不需要再修改或添加,谢谢!

2015-09-02 20:55  黎学生

杨老师:
我做的列表里面有个搜索,搜索也是get方式提交。
点击搜索后,生成分页的链接也是带有搜索的条件的,
但是我点击分页链接后,那些搜索的条件就丢失了。
但是,pageindex那个参数没丢失?请问这是为什么呢?
回复:您好,既然分页索引中带有搜索条件,分页后搜索条件丢失应该是您后台代码的问题,您需要设置断点调试检查看问题出在哪里。谢谢!

2015-09-02 16:09  程序员小子

@Ajax.Pager(Model, new PagerOptions
        {

            PageIndexParameterName = "pageIndex",
            ContainerTagName = "ul",
            PrevPageText = "上页",
            NextPageText = "下页",
            FirstPageText = "首页",
            LastPageText = "尾页",
            CssClass = "pagination",

            CurrentPagerItemTemplate = "<li class=\"active\"><a href=\"javascript:void(0);\">{0}</a></li>",
            DisabledPagerItemTemplate = "<li class=\"disabled\"><a>{0}</a></li>",
            PagerItemTemplate = "<li>{0}</li>",
            PageIndexBoxId = "pageIndexBox2",
            GoToButtonId = "goToBtn",
            NumericPagerItemCount = 4,
            
            RouteName="Post_pageIndex",
            RouteValues=new RouteValueDictionary{{"","{0}"}}
        }, new MvcAjaxOptions
        {
            UpdateTargetId = "list",
            DataFormId = "searchForm",
            OnBegin = "layer.load(0, {shade: false});"
            ,
            OnComplete = "layer.closeAll()",
        }).Options(o => o.AddRouteValue("", "").SetPageIndexParameterName("pageIndex")
            .SetPageIndexBoxId("pageIndexBox2")
.SetGoToButtonId("goToBtn").SetPagerItemTemplate("<li>{0}</li>").SetRouteName("Post_pageIndex")).AjaxOptions(a =>a.SetUpdateTargetId("list"))
        <p>
            <input type="text" id="pageIndexBox2" style="width: 28px" />
            <button id="goToBtn">跳转</button></p>

为什么自定义路由,无刷新的时候没有按照我自定义的来显示 自定义: www.baidu.com/_2
回复:您好,您的问题太长,已经被自动截断,关于路由的问题,您需要用调试工具来调试检查,请用nuget下载安装routedebugger,在web.config中启用路由调试后检查您的路由匹配优先级,很多时候,想当然地以为当前url应该匹配某个路由的想法是错误的。谢谢!

2015-09-02 11:06  effort

您好。我想问下,aspnetpage中的页码怎么自定义,首页和尾页使用的图片 例:上一页  1/20  下一页,   页码处,我想使用{当前页/总页数}这种格式的
回复:您好,页索引使用图片官方示例中就有,请看这个例子:http://www.webdiyer.com/aspnetpager/demos/imagebuttons.aspx,另外帮助文档中有详细的说明,请查看所有属性名后带有ImageExtension属性说明。谢谢!

2015-09-02 09:47  szr

杨哥 你好:
       问你一下 asp.net mvc 部署在IIS上 是使用虚拟目录部署的,这样会导致我访问的时候会多一级目录。当我在访问虚拟目录下的url时,程序就404错误了找不到页面了,这个我应该怎么处理呢。
注意:程序是一定要部署在IIS虚拟目录下的
回复:所有链接不要用类似于/rootdir/home/这样针对根目录的绝对路径,而是用Url.Content来转换,象这样:@Url.Content("~/rootdir/home")。谢谢!
;