我正在将css应用于我的列表元素之一,该列表元素位于母版页中的
function SelectThis(ctrl) {
debugger;
var list = document.getElementById("myslidemenu").getElementsByTagName('a');
for (i = 0; i < list.length; i++) {
list[i].style.color = "white";
list[i].style.background = "#414141";
}
ctrl.style.background = "black";
ctrl.style.color = 'yellow';
}
但是因为我点击超链接。主页面重新加载,所选样式丢失
答案 0 :(得分:0)
由于超级链接位于<li>
使用
e.preventDefault();将停止<a>
代码
更新
list[i].addEventListener('click',preventReload);
function preventReload(e){
e.preventDefault();
}
在for循环中添加此代码,这将停止超链接的默认功能,即阻止页面重新加载。
答案 1 :(得分:0)
如果您需要重新加载页面,因为它是子页面的菜单,那么我这样做的方式是:
我会做这个服务器端,而不是javascript。
另一个选择是使用cookie /会话变量,不确定C#语法,我最近在PHP中做了这个并且使用AJAX在过滤一些数据后设置会话变量以记住当点击下一个时的当前状态水平。