0

これが私が使用しているコードです:

function load(toLoad, area){
    $(area).html('<img src="images/ajax-loader.gif" alt="Loading" class="center" />');
    loadContent();
    function loadContent() {
        $(area).load(toLoad,'',sorter())
    };
    function sorter() {
        alert('s');
        $("#myTable").tablesorter({
            widgets: ['zebra']
        });
    };
    return false
};

ロード関数が呼び出されると、アラートは、ロードが終了した後ではなく、ロード中の画像が表示されたときに表示されます。

何が問題なのですか?

4

3 に答える 3

5

これには構文が少しずれていると思います。

それ以外の

function loadContent() {
    $(area).load(toLoad,'',sorter())
};

試す

function loadContent() {
    $(area).load(toLoad,'',sorter)
};
于 2009-11-15T23:55:25.497 に答える
0

関数定義をロード関数の外に移動します。次のようになります

function load(toLoad, area){
    $(area).html('<img src="images/ajax-loader.gif" alt="Loading" class="center" />');
    loadContent();
}

function loadContent() {
        $(area).load(toLoad,'',sorter())
}

function sorter() {
        alert('s');
        $("#myTable").tablesorter({
                widgets: ['zebra']
        });
    };
    return false
}
于 2009-11-15T23:55:39.570 に答える
0

次のことを試してください(匿名関数のload関数でsorter()の呼び出しをラップします)

function load(toLoad, area){
    $(area).html('<img src="images/ajax-loader.gif" alt="Loading" class="center" />');
    loadContent();
    function loadContent() {
        $(area).load(toLoad,'',function() {sorter()})
    };
    function sorter() {
        alert('s');
        $("#myTable").tablesorter({
                widgets: ['zebra']
        });
    };
    return false
};
于 2009-11-15T23:58:49.297 に答える