我有选择菜单,其中包含以“ url's”作为值的选项。用户点击该选项后,会将其带到特定的网址。我希望将选定的选项带到特定的URL时显示在选择菜单上。
代码: HTML:
<div data-controller="dropdown">
<select id="abcMenu" data-action="dropdown#abc">
<option value="/abc">A</option>
<option value="/xyz">B</option>
<option value="/def">C</option>
</select>
</div>
脚本
abc(){
var elt = document.getElementById('abcMenu');
elt.options[elt.selectedIndex].setAttribute('selected','selected');
var option = elt.options[elt.selectedIndex].value;
Turbolinks.visit(option);
}
涡轮链接将转到下一个路径,而下拉选项将被预先选择为第一个选项。谁能让我知道如何解决这个问题。
答案 0 :(得分:1)
您可以使用window.location.pathname
来获取路径,然后从选择中设置相应的选项:
function selectOptionByValue(element, value){
for(var i=0; i < element.options.length; i++) {
if(element.options[i].value == value) {
element.selectedIndex = i;
}
}
}
其中element是select元素,value是您要检查的路径。