<div class="shakeme">
<a id="link" href="javascript: void(0)" >
<img border="0" src="basic.png" width="400" height="230" role="button">
</a>
</div>
这是我的部门,里面有一个链接。正如您所看到的,link是空的,换句话说,什么也不做。
<select onchange="enableLink()" id="first-disabled" class="selectpicker">
<optgroup>
<option selected="selected" value="1000" > Select </option>
</optgroup>
<optgroup label=" A ">
<option value="1001"> Car </option>
<option value="1002"> Banana </option>
</optgroup>
</select>
这是我的选择选项栏,带有自定义。我删除了一些设置,以免使代码更加混乱。然而,它基本上是一个选项选择栏。
function enableLink() {
var e = document.getElementById("first-disabled").value;
if( e == 1001 ){
document.getElementById("link").href="1001.html";
};
if( e == 1002 ){
document.getElementById("link").href="1002.html";
};
}
通过更改,它调用enableLink并将href设置为某个值。在这一点上一切都很好。当我改变选项选择栏的值时,点击链接后,它会转到我想要的链接。但是,当我点击"返回"按钮,这是在每个web浏览器,它采取在页面上以前的信息,并显示以前选择的值。例如,它显示:香蕉在选择栏。
之后,当我点击链接它不做任何事情,我猜,因为它也设置为空(无效)当我回到前一页。我怎样才能让它仍然转到香蕉链接?
编辑:我认为这个问题可以通过默认的选择框设置来解决。换句话说,当我回去为什么它不使"选择"选项作为默认设置?您有选择的值,而不是选项的值。要捕获选项值,执行以下操作:
var a = document.getElementById("first-disabled");
var e = a.options[a.selectedIndex].value;
if( e == 1001 ){
document.getElementById("link").href="1001.html";
};
if( e == 1002 ){
document.getElementById("link").href="1002.html";
};