有一个简单的角度示例http://codepen.io/snater/pen/mHsAt,我想要的是跨度单击,控制器模型从指令更改,文本字段采用模型的值。这可能吗?
问问题
504 次
1 回答
0
我认为您使用错误的语法来引用 ngModel,再加上 Angular 可能已经以其他方式使用了 ngModel 的事实;如果您更改用于存储文本的属性的名称,即txtVal
,并在模板中不引用它scope.
,您应该能够在单击跨度时更改输入的值。
像这样的东西:
<div ng-controller="ctrl">
<input change-model txt-val="change_me" />
<p>{{change_me}}</p>
在 js 文件中:
app.directive "changeModel", ($compile) ->
priotity: 0
restrict: "A"
scope:
txtVal: '='
link: (scope, element, attrs) ->
//Use txtVal instead of scope.txtVal here
tpl = "<input ng-model='txtVal' /><span data-value='Write this to model' ng-click='clickHandle()'>Must paste text on click</span></span>"
new_el = angular.element(tpl)
scope.clickHandle = ->
scope.txtVal = "some text"
通过这些更改,单击跨度会更新输入的值和<p>
于 2013-05-08T15:18:52.333 回答