表单提交时未调用jQuery处理程序
jQuery handler not being called on form submit
在提交表单时调用jquery函数的代码从未被调用。我一遍又一遍地检查了代码的格式,一切似乎都很正常。
知道怎么解决这个问题吗?感谢
HTML:
<form class="form" role="form" id="experimentform">
<label for="name">Study Name</label>
<input class="form-control" type="text" name="name" placeholder="Experiment Name" id="name">
<label for="description">Study Description</label>
<textarea class="form-control" name="description" rows="4" cols="20" id="description" placeholder="description"></textarea>
<label for="numparticipants">Number of Participants</label>
<input class="form-control" type="number" name="numparticipants" id="numparticipants">
<input class="btn btn-success" type="submit" name="submit" value="Create">
</form>
jQuery:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
$(document).ready(function() {
$("#experimentform").submit(function(event) {
alert( "Handler for .submit() called." );
event.preventDefault();
});
});
</script>
您绝对不能在<script></script>
标记之间放置代码,同时在同一<script>
标记中包含外部文件。
应该是…
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#experimentform").submit(function(event) {
event.preventDefault();
alert( "Handler for .submit() called." );
});
});
</script>
注意:通常,.preventDefault()
是函数中的第一个项。请参阅:event.preventdefault文档
$(document).ready(function() {
$("#experimentform").submit(function(event) {
event.preventDefault();
alert("Handler for .submit() called.");
});
});
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form class="form" role="form" id="experimentform">
<label for="name">Study Name</label>
<input class="form-control" type="text" name="name" placeholder="Experiment Name" id="name">
<label for="description">Study Description</label>
<textarea class="form-control" name="description" rows="4" cols="20" id="description" placeholder="description"></textarea>
<label for="numparticipants">Number of Participants</label>
<input class="form-control" type="number" name="numparticipants" id="numparticipants">
<input class="btn btn-success" type="submit" name="submit" value="Create">
</form>
相关文章:
- keyup事件处理程序更改焦点不适用于快速键入
- 提示使用服务器端事件处理程序激活JavaScript
- 将事件处理程序绑定到任何可能的事件
- 正在将事件处理程序添加到不存在的类
- 在AJAX回调和呈现PIXIJS之间处理程序流时遇到了问题
- Adobe Edge:动画完成时添加onComplete处理程序
- 是否可以从输入处理程序中确定输入的类型
- 在循环中附加事件处理程序时出现浏览器性能问题
- 在同一个javascript事件处理程序中调用不同的函数
- 有没有一种方法可以让内联事件处理程序在元素创建后立即执行
- 检查事件处理程序参数
- 实现延迟的jquery更改事件处理程序
- 平均值.on(事件[,选择器][,数据],处理程序)
- getSript在同一对象上多次添加处理程序
- 如何使用Node.js在JavaScript模块文件之间使用事件处理程序
- 如何让React JS点击处理程序在执行时更新DOM
- 如何使jQuery的“bind”或“on”事件处理程序幂等
- Backbone listenTo不将jquery函数作为处理程序进行激发
- 带有参数的Javascript事件处理程序
- Jquery事件处理程序仅适用于匿名函数