如何在AJAX调用后加载DOM后才能执行某些操作?

时间:2017-04-24 11:58:04

标签: javascript jquery ajax

<div id="mydiv">
    ...
    <a id="my-ajax-link"> ... </a>

    ...
    ...

    <select id="my-selectmenu"> 
        ... 
    </select>
    ...
</div>

我有一个链接'my-ajax-link'点击一个AJAX调用,它会更新div'mydiv'的内容。

我希望只有在调用AJAX之后div'mydiv'中的DOM完全加载后才通过jQuery执行选择菜单。

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

只需使用ajax calback:

$.ajax({
...
}).always(function(response_data) {
  alert('ajax finished');
});

答案 1 :(得分:0)

如果我理解正确,听起来你想在Ajax请求完成后改变DOM中的某些内容,而不是在处理它时。您应该查看done() function

示例:

$.ajax({
    url: 'https://test.com/url/to/call',
    type: 'GET',
    success: function (response) {
        ...
    }
}).done(function(result) {
    //
    // Code you want executed AFTER ajax call completes
    // Where result is the response from the server after ajax finishes the call
    //
});