根据当前输入字段设置textarea文本

时间:2013-09-25 16:28:06

标签: node.js angularjs

我有两个输入字段

input(ng-model='form.firstName', name='firstName', id='familyName')

input(ng-model='form.lastName', name='lastName')

我还有一个textarea字段

textarea(id='fieldInfo', ng-model='fieldInfo', name='fieldInfo' cols='15', rows='10')

当焦点或光标位于名字输入时,我想将TextArea中的文本更改为“请输入您的名字”,当名字输入时,我将其更改为“请输入您的姓氏” inout并且它应该能够切换,因为用户将焦点从名字切换到姓氏和姓氏到名字。

非常感谢任何帮助。

Melroy

2 个答案:

答案 0 :(得分:0)

如果您使用的是角度1.2.0,则可以使用ngFocus directive

在您的控制器中:

var myApp = angular.module('myApp',[]);

myApp.controller('MyCtrl', ['$scope', function($scope) {
    $scope.text = "";
}]);

在你看来:

<input type="text" data-ng-model="form.name" ng-focus="text = 'Please enter your first name'" />
<input type="text" data-ng-model="form.last" ng-focus="text = 'Please enter your last name'" /> 

<textarea name="area" id="textarea" cols="30" rows="10"> {{ text }} </textarea>

您可以查看this fiddle

编辑:错误的小提琴链接

答案 1 :(得分:0)

如果您使用的是稳定的1.0.x版本的AngularJS,ng-focus指令将不起作用。但是,我创建了working CodePen example如何在没有ng-focus指令的情况下执行此操作。

我创建了自己的on-focus指令,用于计算表达式,从而更新textarea使用的作用域模型。我确信它可以使用一些改进,但这个概念应该仍适用于您的应用程序。