我想从一个PagedListPager MVC应用程序中获取我正在使用的链接,并使用上一页和下一页URL从使用ASP.NET助手的呈现分页器中创建<link>
标记。最初,我计划在页面呈现后使用JavaScript和jQuery获取这些链接的URL。但是,在进行了一些研究之后,这种方法将不允许这些<link>
标记成为可爬行的。
所以现在我想知道是否有一种聪明的客户端/Javascript方法来抓取这些URL并使这些<link>
标记可以爬行。
PagedListPager代码:
@Html.PagedListPager(Model.Catalogs, page => Url.Action("Books", new {BookName = Model.Book.DisplayAs, bookId = Model.BookId, page}), new PagedListRenderOptions { FunctionToTransformEachPageLink = (liTag, aTag) => { aTag.Attributes.Remove("rel"); liTag.InnerHtml = aTag.ToString(); return liTag; }})
上面的代码会将寻呼机显示得很好。现在,我想知道是否有一种方法可以使用Javascript & jQuery,如下面所示,以使链接可以爬行:
if ($('.PagedList-skipToPrevious')[0]){
$('.PagedList-skipToPrevious').children('a').removeAttr('rel');
var prev_link = $('.PagedList-skipToPrevious').children('a').attr('href');
var prev = document.createElement('link');
prev.rel = 'prev';
prev.href = prev_link;
document.head.appendChild(prev);
}
任何帮助都是非常感谢的!
发布于 2017-09-22 08:02:48
您考虑过提供“查看所有”页面并将分页版本设置为noindex
吗?
https://www.sitepoint.com/pagination-and-seo-best-practices-common-issues/
https://stackoverflow.com/questions/46367808
复制相似问题