【问题标题】:angularjs filter of a select with empty value具有空值的选择的angularjs过滤器
【发布时间】:2013-03-09 08:44:12
【问题描述】:

我在 AngularJS 中的过滤器有问题。在这里查看我的代码:http://jsfiddle.net/sqev9/7/

我有一个在 ng-options 字段中使用过滤器的选择:

ng-options="listitem as listitem.Name for listitem in MyList.Items|filter:FilterList"

我也使用了一个空选项,因为这个选择是可选的。

作为选择的 ng-model,我使用值“SelectedInList”

现在的问题是,当过滤器不匹配任何内容时,我的 $scope 中的“SelectedInList”变量不为空。

通过选择“item1”并按“Go”来模拟这个:SelectedInList 现在正确地是 item1 对象。现在过滤器发生变化,列表为“空”:只有“-”项存在,这也是预期的。现在再次按“go”应该会给我作为 SelectedInList 的“null”,但它仍然是 item1 对象,我没想到。

这种方法的任何解决方案?

最好的问候, 汤姆,

【问题讨论】:

    标签: select filter angularjs


    【解决方案1】:

    似乎当列表被过滤并且值不再存在时,ng-model 上没有更新。这看起来很像一个错误,但我需要更多的研究来了解原因。

    无论如何,一个解决方案是在Add方法的末尾设置SelectedInListnull

    【讨论】:

    • 感谢您的解决方案。不是那么直观,但它似乎工作:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-29
    • 2014-06-18
    • 1970-01-01
    相关资源
    最近更新 更多