在文本区域内呈现多个值,以换行符分隔
Render multiple values, separated by line break, within a textarea
我正在 angular 中呈现动态表单。当属性有多个值时,我希望在文本区域内呈现它们。每个值各占一行。
但无法正常工作!
这是我目前拥有的:
<script type="text/ng-template" id="form_field_text">
<label for="{{field.displayName}}">{{field.displayName}}</label>
<br />
<div ng-if="field.multivalue == '0'">
<input id="{{field.displayName}}" type="text" ng-model="formValues[field.displayName]" placeholder="{{ field.theValues[0]}}" />
</div>
<div ng-if="field.multivalue == '1'">
<textarea rows="field.numberOfValues">
<p ng-repeat="value in field.theValues track by $index">
{{value}}
</p>
</textarea>
</div>
</script>
这是我得到的,我认为这是因为我在每个 ng-repeat 循环中渲染
元素,而 textarea 不承认它:
在这种情况下,我可以在没有任何 html 元素 "paragraph" 的情况下执行 ng-repeat 吗?
或任何其他方式完成此操作?
这样就可以了:
<div ng-if="field.multivalue == '1'">
<textarea rows="{{field.numberOfValues}}" cols="50">
{{field.theValues.join(" ");}}
</textarea>
<button type="button" ng-click="addValue(field)">Add value </button>
</div>
该按钮运行以下功能,但仅用于测试:
$scope.addValue = function(field) {
field.theValues[(field.numberOfValues)] = "aaaa";
field.numberOfValues++;
};
但出于某种原因,我在第一行缩进了:
我修复了 "white-space" 属性的缩进问题:
<textarea rows="{{field.numberOfValues}}" cols="50" style="white-space: nowrap;">
我正在 angular 中呈现动态表单。当属性有多个值时,我希望在文本区域内呈现它们。每个值各占一行。
但无法正常工作!
这是我目前拥有的:
<script type="text/ng-template" id="form_field_text">
<label for="{{field.displayName}}">{{field.displayName}}</label>
<br />
<div ng-if="field.multivalue == '0'">
<input id="{{field.displayName}}" type="text" ng-model="formValues[field.displayName]" placeholder="{{ field.theValues[0]}}" />
</div>
<div ng-if="field.multivalue == '1'">
<textarea rows="field.numberOfValues">
<p ng-repeat="value in field.theValues track by $index">
{{value}}
</p>
</textarea>
</div>
</script>
这是我得到的,我认为这是因为我在每个 ng-repeat 循环中渲染
元素,而 textarea 不承认它:
在这种情况下,我可以在没有任何 html 元素 "paragraph" 的情况下执行 ng-repeat 吗? 或任何其他方式完成此操作?
这样就可以了:
<div ng-if="field.multivalue == '1'">
<textarea rows="{{field.numberOfValues}}" cols="50">
{{field.theValues.join(" ");}}
</textarea>
<button type="button" ng-click="addValue(field)">Add value </button>
</div>
该按钮运行以下功能,但仅用于测试:
$scope.addValue = function(field) {
field.theValues[(field.numberOfValues)] = "aaaa";
field.numberOfValues++;
};
但出于某种原因,我在第一行缩进了:
我修复了 "white-space" 属性的缩进问题:
<textarea rows="{{field.numberOfValues}}" cols="50" style="white-space: nowrap;">