嘿,在我的程序中有一个链接,如图所示,onclick它调用函数clearform,如图所示:
Html代码:
<a class="button" href="Cancel" style="left: 55%;" onclick="clearForm()">Cancel</a>
JavaScript代码:
function clearForm(){
document.getElementById("subjectName").value = "";
return false;
}
返回假是不工作在这个代码.实际上,函数的第一行执行成功,但返回假是失败的.我的意思是页面被重定向到网址“取消”.
6条答案
按热度按时间jgwigjjp1#
将代码更改为
tpgth1q72#
你的问题是你需要返回布尔值。
但是放下一切...
element.onclick = clearForm;
preventDefault()
,这是实现这一目标的现代方法。function clearForm(event) { event.preventDefault(); }
6qqygrtg3#
应该可以
ee7vknir4#
请注意,如果clearForm()中存在bug或错误,那么“return false”不会停止锚操作,您的浏览器会尝试链接到href“Cancel”。
1.用户点击锚
1.不会触发return false,因为Javascript已经停止。
如果您依赖于第三方JavaScript API(我使用的是Recyclebank提供的代码来生成弹出窗口),并且第三方API进行了破坏JavaScript的更新,那么您将遇到问题。
以下操作将在正常情况和错误情况下停止链接。
7bsow1i65#
在
return false
;一定要在最前面。(In在过去的几个月里,我处理过的所有情况--可能是也可能不是bug)。
就像这样:
onclick="return false; clearForm();"
onclick="return clearForm()"
.mbskvtky6#
请记住,一些浏览器扩展可能会干扰链接的正常运行。例如,我遇到了一个情况,有人同时启用了AdBlock Plus和Ghostery。单击带有'onclick=“的简单'a'标签会返回SomeFunction();“'属性(函数返回false)导致浏览器将单击视为页面转换,并转到空白页面,加载指示器一直旋转。禁用这些浏览器扩展可解决此问题。
包括这个作为答案,因为这是我从谷歌登陆的第一个页面。