2013-11-04 90 views
2

值我可以創建多個輸入值一個不錯的字符串:角JS檢索跨度

<input ng-model="first"> 
<input ng-model="second"> 
<span ng-model="result">{{first}} and {{second}}</span> 

如何我現在可以檢索JS生成的字符串?理想的情況是類似

var myResult = $scope.result 

,但我覺得我失去了一些東西......

+0

{{first}}和{{second}}似乎只用於演示目的。你真的需要它作爲模型屬性嗎? –

回答

3

我建議做一些更是這樣的:

查看

<input ng-model="first"> 
<input ng-model="second"> 
<span>{{result}}</span> 

控制器

$scope.$watchCollection("[first,second]", function(newVals){ 
    $scope.result = newVals[0] + " and " + newVals[1]; 
}); 

然後您可以使用var myResult = $scope.result。這是一個fiddle。但只是更多的上下文,ngModel通常不用於綁定到非輸入。從docs(重點煤礦):

的ngModel指令結合的輸入,選擇,文本區域(或定製表單控件)到使用NgModelController,其中創建和由該指令露出的範圍的特性。

所以這取決於你可能想創建自己的指令最終使用情況,但你也可能要問自己,你正在嘗試做的是否必要,或者是否有更好的方式去關於它。

+0

謝謝,這很完美!只有一個評論,$ watchCollection目前的穩定版本不可用,但希望很快:) – ticofab

+0

嗯是啊,現在你可以只使用'$ watch' ...或升級到'1.1.4 +':) 。 – hiattp