我有html
表单,当我点击submit
按钮页面时会转到insert.php
我不喜欢它
preventDefoult不起作用
我有这个script
HTML
HTML
<form action="insert.php" method="post">
<input type="text" name="username" placeholder=""><br />
<input type="text" name="name" placeholder=""><br />
<input type="text" name="lastname" placeholder=""><br />
<input id="mail" name="email" type="text" placeholder="E-mail"><br />
<input id="mail_1" type="text" placeholder="reply E-mail"><br />
<input id="password" name="password" type="password" placeholder=""><br />
<input id="password_1" type="password" placeholder=""><br />
<input id="submit" type="submit" value="registration">
</form>
jquery的
$("#submit").click(function(event){
event.preventDefault();
});
答案 0 :(得分:12)
您无需听取按钮点击,而是需要收听<form>
提交:
$("form").submit(function(event){
event.preventDefault();
});
现代jQuery(1.7或更高版本):
$("form").on('submit', function(event){
event.preventDefault();
});
答案 1 :(得分:2)
我认为你错过了取消的活动
$( "#target" ).submit(function( event ) {
event.preventDefault();
});
答案 2 :(得分:2)
问题是事件正在冒泡并且正在调用表单的提交事件。
您应该收听表单的click
事件,而不是收听按钮的submit
事件:
$("#formId").submit(function(event){
event.preventDefault();
});
并在表单中添加id
属性:
<form id="formId" ...
这应该可以阻止你的表格工作。
答案 3 :(得分:1)
首先在表单中添加ID,我将使用myFormId
。
<form id="myFormId" action="insert.php" method="post">
<input type="text" name="username" placeholder=""><br />
<input type="text" name="name" placeholder=""><br />
<input type="text" name="lastname" placeholder=""><br />
<input id="mail" name="email" type="text" placeholder="E-mail"><br />
<input id="mail_1" type="text" placeholder="reply E-mail"><br />
<input id="password" name="password" type="password" placeholder=""><br />
<input id="password_1" type="password" placeholder=""><br />
<input id="submit" type="submit" value="registration">
</form>
然后使用表格Id:
$('#myFormId').on('click', function (event){
event.preventDefault();
});
答案 4 :(得分:1)
对于将来潜伏在这里的任何人,我的问题是,表单在脚本之前没有加载,因此事件没有受到限制。所以我做了以下事情,我的问题得到了解决:
$(window).load(function () {
$("#submit").submit(function (e) {
e.preventDefault();
...
...
});
}