问题出现的环境背景及自己尝试过哪些方法
尝试了e.stopPropagation()、e.preventDefault()和return false这三个方法但是,还是要跳转?
相关代码
html结构
<a href="page.html">
<span id="test-0">TEST</span>
<i class="my-icon" onclick="testClose(0)">
</a>
testClose()事件处理函数
function testClose(i,e) {
// e.stopPropagation();
// e.preventDefault();
//e.stopPropagation();
$('#test-'+i).parent().parent().remove()
var addItemArr = sessionStorage.getItem("selectedItem")?$.parseJSON(sessionStorage.getItem("selectedItem")):[]
addItemArr.splice(i,1)
var addItemArr_dispose=[]
addItemArr.forEach(element => {
var x='"'+element+'"'
addItemArr_dispose.push(x)
});
sessionStorage.setItem("selectedItem","["+addItemArr_dispose+"]")
//return false
e.stopPropagation();
e.preventDefault();
}
你期待的结果是什么?
如何才能不让这个a标签跳转,在线等,挺急的
已解决
悬赏分:30
- 解决时间 2021-11-26 16:04
点赞 0反对 0举报 0
收藏 0
分享 0
回答3
最佳
-
写错了,事件没有传进去
<i class="my-icon" onclick="testClose(0, event)">
把a标签的href属性去掉,就可以看到网页提示的错误了
支持 0 反对 0 举报2021-11-26 09:23
-
少侠,可以通过js手动打开页面,如果这种需求,最快的是获取点击的元素,如果是a元素,调用window.open/location.href=xxx直接打开,如果是i元素,不做处理就好了,换个思路。
支持 0 反对 0 举报2021-11-26 11:20