我有这个jquery脚本,它在head标签中不起作用。
<script type="text/javascript">
$(window).load(function() {
$( "#target" ).submit(function( event ) {
alert( "Handler for .submit() called." );
event.preventDefault();
});
}
</script>
但如果我将代码放在表单下面,它通常会起作用。
我想将它放在.js文件中。但是在head标签中不起作用,只有在表格后面包含。
可以使此代码在head标签中工作吗?
答案 0 :(得分:2)
可能在.load
事件被触发之前不会呈现表单。
检查哪个窗口,但您可能想写:
<script type="text/javascript">
$(document).ready(function() {
$( "#target" ).submit(function( event ) {
alert( "Handler for .submit() called." );
event.preventDefault();
});
});
</script>
选中此link
如果你不使用.ready
方法,它将执行代码,搜索#target
并找不到任何内容,因为渲染没有传递你所定位的对象,所以它无法找到它
答案 1 :(得分:2)
你应该像这样初始化jQuery:
$(document).ready(function() {
$( "#target" ).submit(function( event ) {
alert( "Handler for .submit() called." );
event.preventDefault();
});
});
答案 2 :(得分:0)
试试这个?
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$(document).on("submit", "#target", function(event) {
alert("Handler for .submit() called.");
event.preventDefault();
});
});
</script>