动态更新不会触发文本字段的更改

时间:2017-01-19 13:28:01

标签: angularjs

我在angularjs中面临文本框的一个问题。 当我通过某种方式更新文本字段数据时(如点击按钮),则ng-change不起作用。请检查plnkr

<div class="underline vida">
  <div class="container">
    <iframe src="https://www.youtube.com/embed/XGnSx3lF1xQ" allowfullscreen class="video"></iframe>
  </div>
  <div class="clear"></div>
</div>

当我更新按钮上的第一个名字时,点击更改没有触发,但是当我在文本字段中更改名字时,更改已被解雇

1 个答案:

答案 0 :(得分:0)

此行为是有意的。它在官方文档中说明了这一点:

  

只有在输入发生变化时才会评估ngChange表达式   value会将新值提交给模型。

     

不会评估:

     
      
  • 如果从$ parsers转换管道返回的值有   没有改变

  •   
  • 如果输入继续无效,因为模型将保持为空

  •   
  • 如果以编程方式更改模型,而不是通过更改输入值
  •   

source

在您的情况下,该列表中的最后一项适用。

  

如果以编程方式更改模型而不是更改输入值

在这种情况下你必须使用手表。