如何使用JQuery .done()

时间:2017-05-01 14:12:27

标签: javascript jquery html

我有以下代码,在函数1的末尾,调用了函数2。

function function1() {
    var html = "";
    html += '<div>';
    html += '<button type="button" id="button1">Click Me</button>';
    html += '</div>';

    $("#element").html(html).done(function2());
}


function function2() {
    $("#button1").prop("disabled", true);
}   

但是这不起作用,控制台抱怨$(...).html(...).done is not a function。我该怎么办?

2 个答案:

答案 0 :(得分:2)

.html()功能是同步的,您不需要任何回调。只需在调用.html()后调用第二个函数:

$("#element").html(html);
function2();

这将确保在使用新标记更新元素后执行function2

答案 1 :(得分:0)

获得所需结果的最佳方法是按如下方式构建代码。

function function1() {
    var html = "";
    html += '<div>';
    html += '<button type="button" id="button1">Click Me</button>';
    html += '</div>';

    $("#element").html(html);
    function2();
}


function function2() {
    $("#button1").prop("disabled", true);
}

function1();