问题的javascript:返回false不工作

问题描述:

嘿那里是我的程序的链接,如图和的onclick它调用如图所示的功能clearform:问题的javascript:返回false不工作

HTML代码:

<a class="button" href="Cancel" style="left: 55%;" onclick="clearForm()">Cancel</a> 

的JavaScript代码:

function clearForm(){ 
     document.getElementById("subjectName").value = ""; 
     return false; 
    } 

返回false在此代码中不起作用。实际上函数的第一行成功执行,但返回false失败。我的意思是页面被重定向到url“取消”。

更改代码

<a class="button" href="Cancel" onclick="return clearForm()">Cancel</a> 
+0

kk谢谢你的工作。 – codeomnitrix 2011-04-27 07:32:49

+0

很高兴帮助你。 – Vijay 2011-04-27 10:29:18

+1

如果clearForm()具有javascript错误,则这不会停止默认操作。请参阅我的回答以获得防弹方法。 – mrbinky3000 2012-02-07 15:35:15

<a class="button" href="Cancel" style="left: 55%;" onclick="clearForm();return false;">Cancel</a> 

应该工作

你的问题是你需要返回布尔。

,抛弃所有...

  • 悄悄地附上您的活动......

    ​​

  • 使用preventDefault()。这是现代化的方式。

    function clearForm(event) { event.preventDefault(); }

+5

+1用于暗示停止使用内联事件处理程序。 – kapa 2011-04-27 07:28:59

+0

kk谢谢亚历克斯我会尝试。 – codeomnitrix 2011-04-27 07:34:09

+0

@bazmegakapa:有时候他们需要 – codeomnitrix 2011-04-27 07:34:37

请注意,如果在clearForm(错误或错误),然后在“返回false”将不会停止锚措施,您的浏览器将尝试链接到HREF“取消” 。下面是逻辑:

  1. 用户点击锚
  2. 的onClick触发clearForm()
  3. 有一个在clearForm误差(),因此使用Javascript崩溃和停止所有代码执行。
  4. 返回false从未被触发,因为Javascript已停止。

如果你是依靠第三方的JavaScript API(我用的是回收银行通过提*卵一个弹出代码),以及第三方API使得,打破了JavaScript的更新,那么你就会有问题。

以下将在正常条件和错误条件下停止链接。

<a class="button" href="javascript:;" style="left: 55%;" onclick="clearForm();return false;">Cancel</a> 

请记住,某些浏览器扩展可能会干扰链接的正常运行。例如,我遇到了某人同时启用了AdBlock Plus和Ghostery的情况。用'onclick ='返回一个简单的'a'标签返回SomeFunction();“'属性(该函数返回false)导致浏览器将点击视为页面转换并转到空白页面,并且加载指示符保存纺纱。禁用这些浏览器扩展清除了问题。

包括这个作为答案,因为这是我从Google登陆的第一页。