1

嘿,我正在尝试关闭页面加载时显示的 div。但是,这样做:

jQuery(document).ready(function () {
   jQuery('#moreDetailsTable').slideUp("fast", function () {});
});

页面加载时似乎不会关闭它,因为它是通过 PHP 代码使用ajax动态填充的。

ajax 调用的 php 如下所示:

echo '<div id="moreDetailsTable" class="widefat fixed comments">
    Testing this out<br />
    Testing this out<br />
    Testing this out<br />
    Testing this out<br />
    Testing this out<br />
</div>
   ect ect.....

我知道代码有效,因为我只是这样做:

jQuery(document).on('click', '#moreDetailsTable', function() {
    jQuery('#moreDetailsTable').slideUp("fast", function () {
        console.log('done');
    });
});

一旦我点击它,它就会向上滑动。

我如何调用.slideUp,因为它是动态填充的,而不是在页面上开始的?

4

2 回答 2

2

请参阅jQuery.ajaxComplete()事件处理程序。这将做你想要的。

例子:

jQuery(document).ajaxComplete(function () {
   jQuery('#moreDetailsTable').slideUp("fast", function () {});
});
于 2013-05-01T14:58:54.987 回答
0

ajax 返回时调用该函数。加载内容后。就像是:

$('.ajaxLoading').show();
    $.ajax({
    type:'POST',
    url:'url',
    dataType: "json"}).done
    (function(response){
        alert(response.message);
        $('.ajaxLoading').hide();
        //window.location = "/dash_board";
            $('#moreDetailsTable').slideUp("fast", function () {});
    }).fail(function(response,textStatus){
        alert('Something goes wrong. Please try again.');
        $('.ajaxLoading').hide();
        //alert(textStatus);
    });
于 2013-05-01T14:58:31.053 回答