根据网址选择的下拉突出显示?

时间:2015-12-28 19:29:32

标签: javascript jquery html

我有一个下拉列表,在更改时会转到所选页面。但是,当该页面加载时,我希望能够显示它所在的页面。例如,如果有人点击科罗拉多州,它将移动到该页面,但显示的选项始终是第一个“查看全部”。如何搜索点击的内容然后在页面上显示?我知道我可以使用会话,但是因为我试图在sharepoint中完成所有这些操作,所以很难...

 <select name="dropdown" onchange="javascript:location = this.options[this.selectedIndex].value;">
<option value="...Lists/Events/Events.aspx">See All</option>
<option value="...Lists/Events/Colorado.aspx">Colorado</option>
<option value="...Lists/Events/MidAtlatic%20States.aspx">Mid-Atlantic States</option>
<option value="...Lists/Events/Pacific%20NorthWest.aspx">Pacific Northwest</option>
</select>​

2 个答案:

答案 0 :(得分:1)

在DOM Ready上执行,

$('select[name="dropdown"] option').each(function(){

   var _val = $(this).val().replace("...", ""); // Fetching value and replacing ...

   if(window.location.href.indexOf(_val)!=-1)
      $(this).attr("selected", true);

});

答案 1 :(得分:1)

您可以尝试以下方法。当新页面加载时,它将从url中提取相应选项的值并设置该值。

$(document).ready(function(){
var pageName = location.pathname.split("/")[url.split("/").length - 1]; 
$('select option').each(function()
{
  if($(this).val().indexOf(pageName) != -1)
     $('select').val($(this).val());   
});

});

示例:https://jsfiddle.net/DinoMyte/08qyom1a/