Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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 plugins 在不在DOM中的窗体上使用自动完成_Jquery Plugins_Jquery - Fatal编程技术网

Jquery plugins 在不在DOM中的窗体上使用自动完成

Jquery plugins 在不在DOM中的窗体上使用自动完成,jquery-plugins,jquery,Jquery Plugins,Jquery,让我首先说,我使用的是JQuery版本1.3.2。此时升级不是一个选项 我有一个表单,它是在页面加载发生后由模板系统添加的。我对JQuery非常陌生,但据我所知,live将允许我访问它 自动完成功能已经为用户搜索服务,并且运行良好。我想分享这个功能的管理部分的网站以及查询几乎是相同的 clientName元素来自动态添加的表单。如果我使用下面的代码,什么也不会发生;没有检索到任何数据 $('#clientName') .site_clientAutocomplete( 'admi

让我首先说,我使用的是JQuery版本1.3.2。此时升级不是一个选项

我有一个表单,它是在页面加载发生后由模板系统添加的。我对JQuery非常陌生,但据我所知,
live
将允许我访问它

自动完成功能已经为用户搜索服务,并且运行良好。我想分享这个功能的管理部分的网站以及查询几乎是相同的

clientName
元素来自动态添加的表单。如果我使用下面的代码,什么也不会发生;没有检索到任何数据

  $('#clientName')
  .site_clientAutocomplete(
    'admin',
    function( $event, $result, $data )
    {
      $('#clientName').val($data.ClientName);
    }
  );
如果我把它包装在下面的代码中,它会工作的。我必须在输入框内单击几次才能从数据库中获取任何信息

$("#clientName").live('keydown', function(){

});

有人能告诉我如何使自动完成功能正常运行吗?

live
仅用于处理当前或将来与选择器匹配的元素上发生的事件。如果您需要更健壮地检测与选择器匹配的元素,您可以在添加内容时应用小部件,也可以使用

使用livequery,您可以“侦听”与选择器匹配的新元素,并在该事件发生时运行函数。在您的情况下,这将是这样的:

$('clientName').livequery(function () {
    $('#clientName').site_clientAutocomplete(
        'admin',
        function( $event, $result, $data )
        {
            $('#clientName').val($data.ClientName);
        }
   );
});

live
仅用于处理当前或将来与选择器匹配的元素上发生的事件。如果您需要更健壮地检测与选择器匹配的元素,您可以在添加内容时应用小部件,也可以使用

使用livequery,您可以“侦听”与选择器匹配的新元素,并在该事件发生时运行函数。在您的情况下,这将是这样的:

$('clientName').livequery(function () {
    $('#clientName').site_clientAutocomplete(
        'admin',
        function( $event, $result, $data )
        {
            $('#clientName').val($data.ClientName);
        }
   );
});

live
仅适用于事件处理程序。它不会检测对DOM的更改,并允许您对这些更改做出反应。您可以查看“livequery”插件,也可以在新内容加载到DOM中后应用该小部件。@AndrewHitaker,谢谢您。我来看看这个插件now@AndrewWhitaker,我现在正在看那个图书馆,它似乎对我有用。你能告诉我我会使用什么事件处理程序吗?我已经看了文档,但没有看到自动完成的文档。也许是keydown?查看github文档中的“API”部分。您可以使用
$('#clientName').livequery(函数(){/*初始化自动完成*/})如果我正确理解您的用例。@AndrewHitaker,Andrew,谢谢。我只是在这里偶然发现了它,我让它工作了。如果您想将此作为答案发布,我很乐意为您提供支持。
live
仅适用于事件处理程序。它不会检测对DOM的更改,并允许您对这些更改做出反应。您可以查看“livequery”插件,也可以在新内容加载到DOM中后应用该小部件。@AndrewHitaker,谢谢您。我来看看这个插件now@AndrewWhitaker,我现在正在看那个图书馆,它似乎对我有用。你能告诉我我会使用什么事件处理程序吗?我已经看了文档,但没有看到自动完成的文档。也许是keydown?查看github文档中的“API”部分。您可以使用
$('#clientName').livequery(函数(){/*初始化自动完成*/})如果我正确理解您的用例。@AndrewHitaker,Andrew,谢谢。我只是在这里偶然发现了它,我让它工作了。如果你想把这篇文章作为回答,我很乐意相信你。@NaN:没问题!很乐意帮忙。@NaN:没问题!很乐意帮忙。