Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何编写一个只在用户与UI中的下拉菜单交互而不在后端的模型更新上执行的函数?_Javascript_Angularjs - Fatal编程技术网

Javascript 如何编写一个只在用户与UI中的下拉菜单交互而不在后端的模型更新上执行的函数?

Javascript 如何编写一个只在用户与UI中的下拉菜单交互而不在后端的模型更新上执行的函数?,javascript,angularjs,Javascript,Angularjs,如果我在select中使用ng change,它将在从后端进行模型更新期间以及用户与UI中的下拉菜单交互并更改值期间被触发。但是,我想要的是一种区分两者的方法,并且仅当用户更改下拉列表时才执行函数,而不是当模型被其他源更新时才执行函数。请让我知道是否有办法做到这一点 若我在select中使用ng change,它将在建模期间被触发 在用户与下拉列表交互期间从后端进行更新 在UI中,并更改值 事实并非如此ng更改直接绑定到浏览器更改事件。对模型的更新不会导致计算ng change中的表达式。这里有

如果我在select中使用ng change,它将在从后端进行模型更新期间以及用户与UI中的下拉菜单交互并更改值期间被触发。但是,我想要的是一种区分两者的方法,并且仅当用户更改下拉列表时才执行函数,而不是当模型被其他源更新时才执行函数。请让我知道是否有办法做到这一点

若我在select中使用ng change,它将在建模期间被触发 在用户与下拉列表交互期间从后端进行更新 在UI中,并更改值

事实并非如此<代码>ng更改直接绑定到浏览器
更改
事件。对模型的更新不会导致计算
ng change
中的表达式。这里有一把小提琴来证明这一点:


只有在浏览器中更改下拉列表时,才会调用
选项changed
。当
$timeout
函数运行时,它会更新模型(和选择),但不会触发
选项Changed
。听起来您只需要
ng change

选项上的单击侦听器?请提供一些源代码,说明您尝试了什么。这不是不可能的,当用户单击某个下拉元素时,您可以使用ng click指令进行用户交互,并使用ng model/ng change指令获得模型更改通知。