如何在没有“#”的情况下使用onclick防止重新加载?

时间:2013-07-16 15:12:26

标签: javascript onclick

我希望用链接添加一些指令 - onclick调用显示简单警告框的脚本。如果我这样做的话......

<label for="arquivo">Máximo de 1MB, observe os <a href="" onclick="ajudaUpload();">tipos permitidos</a>.</label>

即使返回false也会重新加载页面,如果我确实喜欢这个...

<label for="arquivo">Máximo de 1MB, observe os <a href="#" onclick="ajudaUpload();">tipos permitidos</a>.</label>

使用“#”符号,页面滚动到顶部,“#”添加到查询字符串。有没有第三种方法可以在不重新加载,滚动和垃圾的情况下完成它?

7 个答案:

答案 0 :(得分:32)

通话后返回false:

<a href="" onclick="ajudaUpload();return false;">tipos permitidos</a>

或者,如果函数返回false,则可以返回函数的结果:

<a href="" onclick="return ajudaUpload();">tipos permitidos</a>

仅仅在函数中返回false是不够的,你需要从点击处理程序中实际返回false。

答案 1 :(得分:4)

您可以使用.preventDefault()方法,或返回false,或一起删除HREF标记。两者都应该工作得很好。

Vc nao deviar estar usando onclick dessa forma pra comecar。 Ja eh bem antigo e nao se usa assim mais。

答案 2 :(得分:3)

<a href="" onclick="return ajudaUpload()">tipos permitidos</a>

然后在函数中返回false:

function ajudaUpload()
{
  ...
  return false;
}

答案 3 :(得分:3)

您可以使用:

<a href = "javascript:void(0);" onclick="ajudaUpload();"> 

即使我遇到了类似的问题。我想使用onclick函数,但页面会重新加载,我不想要。我试过href =“javascript:void(0);”它起作用了。

答案 4 :(得分:2)

这样做的简单方法就是添加&#39;?&#39; (问号):)

F.e。

<a href="#?">Moiz Travadi</a>

答案 5 :(得分:0)

几乎所有元素都支持onclick事件,因此您可以使用b标记或按钮标记,甚至是span标记。然后,您可以将其设置为看起来像链接(标记)或任何其他您想要的方式。例如:

<label for="arquivo">Máximo de 1MB, observe os <b onclick="ajudaUpload();">tipos permitidos</b>.</label>

答案 6 :(得分:-1)

删除你的herf并为你的标签提供id。然后使用id,您可以显示警报。 (&#39; #id&#39;)。click(function(){alert(message); return false; });