重新开始:
我有一个<select>
,有四个选项,适用于四种不同的类别。当用户访问其中一个类别时,会在<option>
中选择相应的<select>
。例如,如果我正在查看名为“类别名称”的类别,则会在<option>
菜单中选择“类别名称”<select>
这四个不同的类别每个类别中都可以有多个页面。这些类别的第一页的网址为/category-name/
,这些类别的第二页为/category-name/page/2/
,依此类推。我的<select>
只有主要类别的选项,而不是每个类别中的每个页面。
我需要找到一种方法来检测用户是否在名称/category-name/
页面或任何子页面上,例如/category-name/page/2/
。
这是我目前正在使用的脚本:
var pathname = window.location.pathname;
$("#restaurantSelect option[value=\"" + pathname + "\"]").attr("selected","true");
如何修改它以我需要的方式工作?
答案 0 :(得分:1)
您可以将函数传递给jQuery's filter函数。这应该可以轻松执行您想要的任何自定义检查。
var $optionsWithPage = $("#restaurantSelect option").filter(function(){
return /\/page\/\d+/ig.test($(this).attr("option"));
});
编辑 - 基于您的重写(暂时 - 请避免在人们提供答案后重写您的问题),我建议您根据需要调整上述正则表达式。我认为它应该是这样的:
/category-name(\/page\/\d+\/)?/