0

我想在通过 ajax 加载的 html 上运行 jquery 函数。我该怎么做。请注意,我不能在 $.ajax() 中使用它,因为这个 ajax() 函数已经由系统中的另一个模块管理,我不能挂钩。我尝试了以下方法,但它没有改变通过 ajax 加载的输入字段的值。任何想法?

$(document).on("ready", function(){
    run_my_function();
});
function run_my_function(){
    $('selector_on_html_loaded_through_ajax').val('Hi');
}   
4

1 回答 1

1

jquery 中有一个伪事件,允许您在任何 jquery 启动、ajax 请求成功时运行代码。可能有更有效的方法,例如在您发出的请求的 ajax 成功处理程序中。

$.ajaxSuccess(function () {
    $('selector_on_html_loaded_through_ajax').val('Hi');
});

/// or ///

$.ajax({
    'url': 'http://example.com/this/is/my/request',
    'success': function () {
        $('selector_on_html_loaded_through_ajax').val('Hi');
    }
});

更新:另一种选择

另一种选择是使用 DOM 突变事件。唯一的问题是它们已被弃用。这个问题描述了如何跨平台使用它们。

于 2012-12-25T13:30:08.970 回答