Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何在ajax()之外使用live()运行函数?_Jquery_Ajax_Live - Fatal编程技术网

Jquery 如何在ajax()之外使用live()运行函数?

Jquery 如何在ajax()之外使用live()运行函数?,jquery,ajax,live,Jquery,Ajax,Live,我想在通过ajax加载的html上运行jquery函数。我该怎么做呢。请注意,我不能在$.ajax()中使用它,因为这个ajax()函数已经由系统中的另一个模块管理,我无法连接到它。我尝试了以下方法,但没有改变通过ajax加载的输入字段的值。有什么想法吗 $(document).on("ready", function(){ run_my_function(); }); function run_my_function(){ $('selector_on_html_loaded_

我想在通过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');
}   

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突变事件。唯一的问题是它们已被弃用。描述如何跨平台使用它们。

无论您尝试使用何种方法,都无法对不存在的内容设置值。您必须等到元素存在后才能设置它的值。@adeneo那么当元素存在时,您应该得到通知。@aaronaschip:这是不可能的,因为我无法访问ajax()函数。确定添加了另一个选项(DOM突变事件)