我有一个相对简单的表格。我正在使用jQuery来选择提交按钮,截至目前,我只是在点击时显示警告。
问题:无论我做什么,按钮都在使用它的默认动作。所以基本上没有警报显示,而且我坚持使用提交的参数,这些参数会附加到地址栏中url的末尾。
我尝试过使用e.preventDefault();
,e.preventDefault(true);
,e.stopImmediatePropogation()
和e.stopImmediatePropogation(true);
。
我甚至尝试将它们放在document.ready()
区块中。
注册表格在模式面板中,但我认为这不重要......(应该吗?)
我想现在我会告诉你代码。我真的不明白它为什么不起作用。我很感激任何帮助:
HTML:http://pastebin.com/bHCC58w4(完整文档)
<form id="registerForm">
<a class="close"></a>
<h3>Register Today! - It's FREE!</h3>
<p>Registering only takes seconds, and puts you into direct contact with a designer. On top of all that, you can add documents, images, and other files to your project dashboard. What are you waiting for? It's free!</p>
<img src="images/formfish.png" alt="Goldy the goldfish helps users register. It looks like he stepped out for a minute. Sorry about that!" />
<input type="text" id="name" name="name" placeholder="Your full name." title="We just need your first and last name." class="masterTooltip" />
<input type="email" id="email" name="email" placeholder="Your email." title="We won't send you spam. Pinky swear." class="masterTooltip" />
<input type="text" id="userName" name="userName" placeholder="Your username." title="Your username must be unique." class="masterTooltip" />
<input type="password" id="password" name="password" placeholder="Your password." title="Make your password hard to guess." class="masterTooltip" />
<button id="register">Sign up</button>
</form>
JAVASCRIPT:http://pastebin.com/bD2fYPsh(完整文件)
$("#register").on("click", function(e){
e.preventDefault();
alert("Hello!");
});
这是该网站的半实时版本。除了jQuery动画之外,它没有其他功能。我不知道它是否会帮助你们:http://graphicgoldfish.com/creativecodefish/
答案 0 :(得分:5)
更改按钮,使其只是一个按钮,而不是提交按钮:
<button id="register" type="button">Sign up</button>
默认情况下,按钮的类型为submit,这将导致表单本身提交。
答案 1 :(得分:-1)
有一些不同的事件处理程序。我认为你最好使用普通的javascript:
document.getElementById("register").addEventHandler("click", function(e){
e.preventDefault(); // etc
}