Я написал функцию, которая вызывается при изменении текста ввода текста -
В HTML -
<input id="unique" type="text" data-ng-change="KeywordChange(filterKey)" ng-model="$parent.filterKey">
в контроллере
$scope.KeywordChange = function (filterKey) {
//some logic goes here
}
Функция изменения ключевого слова хорошо работает при изменении текста текстового поля. но я хочу, чтобы эта функция НЕ вызывалась при изменении значения входного текстового поля, подобного этому
$('#unique').val('');
$('#unique').change();
и я должен изменить значение текстового поля программно - так есть ли какой-либо вариант, чтобы знать, что функция keywordChange вызывается фактическим изменением текста в текстовом поле или вызвана программным вызовом $('#unique').change();
Если вы хотите изменить значение текстового поля (которое привязано к некоторым данным) программно в AngularJs, то все, что вам нужно сделать, это обновить соответствующую модель.
Использование jQuery для обновления пользовательского интерфейса наиболее определенно не рекомендуется.
Вам нужно просто обновить свойство filterKey в JavaScript из вашего кода AngularJs.
Почему бы просто не использовать ng-keyup, так как все, о чем вы заботитесь, это физические штрихи?