自动完成不使用ajax生成的文本框

时间:2011-05-20 06:45:10

标签: jquery ajax autocomplete

在我的页面中,我使用ajax在按钮点击后生成/显示文本框。我在此文本框中使用自动完成功能,但自动完成调用未启动。当我尝试在文本框中输入任何内容时,我无法在firebug中看到自动完成调用。

但同时它在一个普通的测试页面中工作正常,它有一个文本框(没有ajax生成),所以这意味着jQuery,自动完成文件没问题。

我怀疑ajax生成的文本框的ID应该以不同的方式在自动完成功能中调用。我附上了我试过的方式。

<script>
    $(function(){  
        $("#orderingparty2").autocomplete("auto/findparty.cfm");
    })
</script>

2 个答案:

答案 0 :(得分:3)

将自动完成添加到生成输入框的ajax函数的代码。否则,您可以在onclick等任何事件上触发自动完成事件。

$("#orderingparty2").live('click',function(event) 
{

$(this).autocomplete("auto/findparty.cfm");


});

答案 1 :(得分:0)

您必须在附加文本框的ajax处理程序中附加自动完成调用,如下所示:

$.ajax({  
   ... 
   success(function(...) {
      $('<input type="text">')             
         .attr(...)
         .css(...)
         .appendTo('#myForm')
         .autocomplete("auto/findparty.cfm");  
   })
   ...
});