HTML页面效果如下:

1-2

点击DOM插入内容在输入框插入一段文字(里面的逻辑用js实现)
input框用angularjs ng-model双向绑定。

HTML代码如下:

<p><a href="javascript:void(0)" id="domInsert">DOM插入内容</a></p>
<input type="text" id="textBox" ng-model="name" />
<a href="javascript:void(0)" ng-click="add()">提交</a>

JS代码(angularjs):

var app = angular.module("app",[]);
app.run(function($rootScope) {
	$rootScope.add = function () {
		console.log(this.name)
	}
});

遇到的问题:

使用js插入的文字,angularjs里面不能获取到。

解决方案

//通过DOM操作获取app对象
var element = angular.element(document.getElementsByClassName("ng-scope")[0]);
//得到app对象,可以获取app的controller
var controller = element.controller();
//得到app对象,可以获取app的$scope
var scope = element.scope();
scope.name = 12354;// 改变值
scope.$apply();// 必须要这个

注意:scope.apply()必须的,无论是改变属性还是使用方法。