2013-09-25 82 views
0

我有兩個輸入字段設置textarea的文本基於當前輸入字段

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中的文本設置爲「請輸入您的名字」,並將其更改爲「請輸入y我們的姓氏「,當姓氏在輸入時,它應該能夠切換,因爲用戶將焦點從名字轉換爲姓氏和姓氏到名字。

任何援助將不勝感激。

梅爾羅伊

+0

通過字段中的文本,你的意思是佔位符? – kubuntu

+0

不,實際的文字有點像angular.element.val(「請輸入你的名字」)。最終文本區域將變爲只讀,並且輸入字段焦點將驅動textarea字段中顯示的文本。 – Mel

回答

0

ng-focus指令不會工作,如果您使用的是AngularJS的穩定版本1.0.x。然而,我已經創建了一個working CodePen example你怎麼能沒有ng-focus指令。

我創建了自己的on-focus指令,用於評估表達式,這會導致對textarea使用的範圍模型進行更新。我相信它可以使用一些改進,但這個概念仍然適用於您的應用程序。

+0

非常感謝你!這工作。 – Mel

+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

編輯:錯誤的小提琴鏈接

+0

謝謝,但它沒有爲我工作。我認爲ng-focus不起作用 – Mel

+0

它只適用於使用'unstable'角度版本。你使用什麼版本? – Beterraba

+0

我正在使用angularjs 1.0.3 – Mel

相關問題