【发布时间】:2012-08-14 17:54:22
【问题描述】:
我有一个select 元素,使用AngularJS 将ng-options 设置为某个表达式。如果选项发生变化,那么我需要确保用于显示 select 元素 also 的 jQuery 插件刷新。所以,如果选项发生了变化,那么我需要进行刷新调用。
有人知道怎么做吗?
【问题讨论】:
-
你是什么意思“选项更改”? span>
我有一个select 元素,使用AngularJS 将ng-options 设置为某个表达式。如果选项发生变化,那么我需要确保用于显示 select 元素 also 的 jQuery 插件刷新。所以,如果选项发生了变化,那么我需要进行刷新调用。
有人知道怎么做吗?
【问题讨论】:
我会引导你到angular-ui,我们有一个通用指令 ui-jq 可以做你想做的事。基本问题是 angular 不知道您的 jquery 插件会更新 angular 的模型。通常,您需要监听外部事件并使用$scope.apply let angular know。
【讨论】:
select 上设置选项。使用超时有效,但我不想依赖它。
我不确定这是否是您要问的,但是:如果您想观察模型的变化,请使用scope.$watch:
scope.$watch('name', function(newVal) {
// do something with the new value of scope.name
});
但是,如果您专门使用 select,那么一定要检查 angular-ui,正如 Dan Doyon 所建议的那样。它有一个插件可以满足您的需求。
【讨论】: