Javascript preventDefault停止对锚定标记的刷新单击
我在下面的代码行中只在父页面上放置了一个链接:Javascript preventDefault停止对锚定标记的刷新单击,javascript,html,jquery,mouseevent,jquery-events,Javascript,Html,Jquery,Mouseevent,Jquery Events,我在下面的代码行中只在父页面上放置了一个链接: <a href="javascript:void(0)" id="createNewsLink" class="short" onclick="javascript:func1(); func2(param1,param2,param3);return false;"><caps:msg textId="createNews"/&g
<a href="javascript:void(0)" id="createNewsLink" class="short" onclick="javascript:func1(); func2(param1,param2,param3);return false;"><caps:msg textId="createNews"/></a>
###func2():
单击父页面上的链接,通过调用struts操作打开一个弹出窗口,它工作正常。唯一的问题是,当单击父页面上的链接时,它会刷新父页面。我不希望它刷新,我尝试在链接和Javascriptvoid()
函数中添加return false
,还尝试为此链接上的click event添加事件侦听器,如下所示:
$(document).ready(function() {
$("#createNewsLink").click(function(event) {
//return false;
event.preventDefault();
})
})
及以下:
<>但是没有人做这个把戏,有人能指出我的代码中的错误吗?< /P> < P>你可以考虑尝试:
(函数(){
var linkElement=document.querySelector(“#createNewsLink”);
linkElement.addEventListener('click',函数(e){
var param1=e.target.getAttribute('attr-param1');
var param2=e.target.getAttribute('attr-param2');
console.log(param1,param2);
//在这里你想干什么就干什么。
e、 预防默认值();
});
})();代码>
function func2(param1,param2,param3,param4){
var win;
var location = window.location.href; // location A
var encodeStringVar = encodeString(param3);
win = window.open(param1+'/struts1.action?param2='+param2+'¶m3='+ escape(encodeStringVar) +'#'+param4,target='t1','toolbar=no,scrollbars=yes,menubar=no,location=no,width=990,height=630, top=100, left=100');
window.location.href = location; // location A
return win;
}
$(document).ready(function() {
$("#createNewsLink").click(function(event) {
//return false;
event.preventDefault();
})
})
$(document).ready(function() {
document.getElementById("createNewsLink").addEventListener("click", function(event) {
event.preventDefault();
});
})