JQuery 错误的脚本顺序

JQuery wrong script order?

本文关键字:顺序 脚本 错误 JQuery      更新时间:2023-09-26

我有这个jquery脚本,它在head标签中不起作用。

<script type="text/javascript">
    $(window).load(function() {
        $( "#target" ).submit(function( event ) {
            alert( "Handler for .submit() called." );
            event.preventDefault();
        });
}
</script>

但是如果我将代码放在表单下方,它通常会起作用。

我想把它放在一个.js文件中。但在 head 标签中不起作用,只有当我在表单之后包含时。

是否可以使此代码在头标签中工作?

你应该像这样初始化jQuery:

$(document).ready(function() {
    $( "#target" ).submit(function( event ) {
        alert( "Handler for .submit() called." );
        event.preventDefault();
    });
});

可能在触发事件之前.load表单未呈现。

检查窗口是什么,但你可能想写:

<script type="text/javascript">
    $(document).ready(function() {
        $( "#target" ).submit(function( event ) {
            alert( "Handler for .submit() called." );
            event.preventDefault();
        });
     });
</script>

检查此链接

如果不使用 .ready 方法,它将执行代码,搜索#target但什么也找不到,因为渲染尚未传递您要定位的对象,因此无法找到它

试试这个?

<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>