【问题标题】:Angularjs: after using directive for jquery autocomplete, it doesnt work well. Seem got bugs on thatAngularjs:使用 jquery 自动完成指令后,它不能正常工作。似乎有错误
【发布时间】:2013-03-25 02:30:13
【问题描述】:

作为标题,当我尝试使用 angularjs 指令应用自动完成时。插件本身可以工作,但是指令初始化后的其余代码,它不起作用。 并且没有显示任何错误。

这是在线测试。

http://jsbin.com/ufihip/4

【问题讨论】:

  • 有助于保持代码与问题相关并删除不相关的代码。更具体地说明问题是什么,简化演示会有所帮助

标签: jquery autocomplete angularjs angularjs-directive


【解决方案1】:

这对我来说似乎是一个 hack,但我认为它可能没问题。这是我在 SO 上问另一个问题时发现的(实际上是 charlieftl 的提示)。

当您在指令中进行 DOM 操作时,最好在所有内容初始化后进行(有点像 jQuery 中的 ready 回调)。为此,您可以使用setTimeout$timeout(由于某种原因在您的示例中不起作用)。

这里是你的指令的修复:

myApp.directive('uicomplete', function($http) {
    return function(scope, element, attrs) {
        setTimeout(function() {
            element.autocomplete({
                source: ["ActionScript","AppleScript","Asp"]
            });
        }, 1);
    }
});

在代码中:http://jsbin.com/ufihip/7/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多