Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.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 有没有办法将参数传递给$.change()方法?_Javascript_Jquery_Html_Angularjs - Fatal编程技术网

Javascript 有没有办法将参数传递给$.change()方法?

Javascript 有没有办法将参数传递给$.change()方法?,javascript,jquery,html,angularjs,Javascript,Jquery,Html,Angularjs,我编写了一个函数,当输入文本框文本发生变化时调用- 关于HTML- <input id="unique" type="text" data-ng-change="KeywordChange(filterKey)" ng-model="$parent.filterKey"> 关键字更改功能在输入文本框文本更改时运行良好。但我不希望在这样更改输入文本框的值时调用此函数 $('#unique').val(''); $('#unique').change(); 我必须以编程方式更改文

我编写了一个函数,当输入文本框文本发生变化时调用-

关于HTML-

<input id="unique" type="text" data-ng-change="KeywordChange(filterKey)" ng-model="$parent.filterKey">
关键字更改功能在输入文本框文本更改时运行良好。但我不希望在这样更改输入文本框的值时调用此函数

 $('#unique').val('');
 $('#unique').change();

我必须以编程方式更改文本框的值——那么是否有任何选项可以知道关键字更改函数是由文本框中的实际文本更改调用的,还是由对
$('#unique').change()的编程调用调用的

为什么不直接使用,因为您关心的只是物理按键笔划?

如果您想在AngularJs中以编程方式更改文本框(绑定到某些数据)的值,那么您所需要做的就是更新相应的模型

绝对不建议使用jQuery更新UI


您只需要从AngularJs代码中更新JavaScript中的属性“filterKey”。

检查此小提琴可能会有所帮助是的,这当然是我们使用AngularJs的原因,但在我的情况下,不知何故,我需要使用jQuery更新文本框值。您试图从哪里更新它?它是否来自同一控制器?还是别的地方?如果您是从控制器外部更新文本框的值,那么您没有正确使用AngularJs。控制器将负责通过模型绑定进行UI更新。如果您是在从控制器外部更新Ui之后,那么您需要重新考虑代码,或者使用$broadcast或$emit进行控制器通信。我认为您是对的-在更新Ui时,我需要重新构造代码并将其限制在控制器。谢谢
 $('#unique').val('');
 $('#unique').change();