我不知道这有什么问题,因为我在每一步都关注jquery.com关于表单提交事件的教程。
我的javascript:
[OFC。包括最新的jQuery库。
<script type="text/javascript">
$("form#addFav").submit(function(event) { event.preventDefault(); alert("hello"); });
</script>
还尝试了$(document).ready()
事件:
$(document).ready(function(){
$("form#addFav").submit(function(event) { event.preventDefault(); alert("hello"); });
});
这是我的HTML表单代码:
<form action="" id="addFav">
<input type="text" name="name" class="thin-d"/>
<input type="submit" value="Send"/>
</form>
所以,关于上面的javascript代码,它应该工作(我的意思是它应该阻止默认操作[提交表单]然后发送警报),但这一切都行不通 - 尝试了数以千计的组合,但我失败了。伙计们,我在等你的解决方案。我很感激每一个人。
答案 0 :(得分:3)
答案 1 :(得分:1)
对于遇到相同问题且仍在努力解决此问题的其他人,请尝试查看您是否非法重复使用该ID ,并尝试将表单ID更改为唯一即可。
我不小心将id分配给两个不同的DOM元素,并且事件被绑定到具有相应id的第一个元素,而我的表单是第二个,因此它从未被捕获。这让我长时间地拉扯我的头发。
答案 2 :(得分:0)
我最近遇到了同样的问题。提交时的jQuery无法在表单上运行,但是只需将其更改为click事件即可。仍然茫然为什么.on(submit)
或.submit()
事件将无法识别表格。
$("form#addFav").click(function (event) {
event.preventDefault(); alert("hello");
$(this).submit();
});
答案 3 :(得分:0)
这个问题很旧,但是..您可能在触发之前提交了另一个提交事件。如果这些其他事件包含“ return false”;语句,然后事件执行被中断,并且您的代码永不触发。要在这些事件之前放置代码,可以使用ONSUBMIT表单属性,在其中可以放置将在其他事件之前或同时触发的代码。