我正在尝试从Chrome扩展程序更改特定网站的输入值。为了做到这一点,我在我的内容脚本中使用jQuery。它适用于大多数情况,但是当它是AngularJS视图的一部分时,我没有设法改变输入的值。当我使用let say kendoUI时,我发现了同样的问题。我正在尝试设置调用$('element').val('value')
的值,然后尝试调用模糊并更改事件,但没有任何成功。
我经历过99%与此主题相关的帖子,但仍无法找到可行的解决方案。
答案 0 :(得分:0)
您只需要调用$ scope.apply()以让角度知道更新绑定。这主要是因为默认情况下,angular不知道你在jQuery中所做的更改。
以下是示例代码,此处为jsFiddle。希望这会有所帮助。
app.controller('testCtrl', ['$scope', function ($scope) {
$scope.changeValue = function() {
$('#test').val("new Value");
$scope.apply();
}
<div class="form-inline">
<input type="text" id="test" value="test">
<input type="submit" value="submit" ng-click="changeValue()">
</div>