Javascript 如何有效地等待链接文件在继续使用脚本之前完成运行

Javascript 如何有效地等待链接文件在继续使用脚本之前完成运行,javascript,php,jquery,html,Javascript,Php,Jquery,Html,因此,我通过名为ajaxLoad.php的文件中的foreach循环向index.php添加元素,该文件使用jQuery的load()加载 问题是,当我尝试选择这些元素时,jQuery无法找到它们。我知道ajaxLoad.php还没有完成消息的打印。当我尝试使用jQuery选择delete类锚时,jQuery找不到它们 <div class="messages"> <!--these are added by the f

因此,我通过名为ajaxLoad.php的文件中的foreach循环向index.php添加元素,该文件使用jQuery的load()加载

问题是,当我尝试选择这些元素时,jQuery无法找到它们。我知道ajaxLoad.php还没有完成消息的打印。当我尝试使用jQuery选择delete类锚时,jQuery找不到它们

            <div class="messages">

                <!--these are added by the foreach loop-->
                <a href="#" class="delete">Delete</a>

            </div>

一个可能很重要的注意事项是delete类不在index.php标记中,它们只是通过load()添加的。以下是内联jQuery:

<script>
$(function(){

    //adds messages to a div
    $('.messages').load('ajaxLoad.php');

    //later on...
    $('.delete').click(function(){
        alert('Hey');
        //nothing happens
    });

});
</script>

$(函数(){
//将消息添加到div
$('.messages').load('ajaxLoad.php');
//后来。。。
$('.delete')。单击(函数(){
警惕(‘嘿’);
//什么也没发生
});
});
我查看了$(window).load(function(){}),但它似乎不起作用。
我很高兴能得到帮助!谢谢

将其放入回调函数中,请参见:

或使用:


嗯,这比预期的要容易得多xD它工作得非常好!谢谢!它说我可以在5分钟内接受答案,所以我会接受:)
$('.messages').load('ajaxLoad.php', function() {
    $('.delete').click(function(){
        alert('Hey');
    });
});
$('.messages').load('ajaxLoad.php');

//later on...
$('body').on('click', '.delete', function() {
// ^^^^ any containing element that is already there on page-load
    alert('Hey');
});