我创建了一个按钮,当单击它时,我想从文本区域获取文本。 这是 html。
<div class="text-area-container">
<textarea id="chatBox" class="chat-box" rows="2"></textarea>
</div>
<div class="button-container btn-group btn-group-chat">
<input id="comment" ng-click="chat($event)" class="btn" value="Comment"/>
</div>
这是我的控制器
$scope.chat = function($event) {
var button = $event.currentTarget;
};
我从$event中获取按钮,但如何获取文本区域。我知道我可以jQuery它,但这不是Angular的方式。没有jQuery怎么办?
将ng-model
添加到文本区域,例如:
<textarea id="chatBox" class="chat-box" rows="2" ng-model="textModel"></textarea>
在控制器中写入$scope.textModel = "";
演示小提琴
Angular 是双向数据绑定。设置ng-model
会将文本区域值与控制器变量链接起来。
在控制器端:
$scope.textArea = "";
在视图侧:
<textarea [...] ng-model="textArea">[...]</textarea>
在控制器上,$scope.textArea 将始终包含文本区域内容。
您正在寻找ng-model
.
<textarea ng-model="text" id="chatBox" class="chat-box" rows="2"></textarea>
使用 JS 中的$scope.text
或视图中的{{text}}
访问它。
如果你只需要知道文本区域的值,我想它应该通过data-ng-model="MyTextValue"绑定到一些$scope模型变量:
<textarea id="chatBox" data-ng-model="MyTextValue" class="chat-box" rows="2">}</textarea>
因此,在$scope.chat功能中,您可以访问$scope。我的文本值。
您还可以通过 ng-* 属性启用/禁用或显示/隐藏控件。在大多数情况下,这就足够了。