通过ng-if设置隐藏文本框的值

Set Value of Textbox Hidden by ng-if

本文关键字:文本 隐藏 ng-if 设置 通过      更新时间:2023-09-26

有没有办法设置ng-if隐藏的文本框的值?

我有一个文本区域,我想在页面加载时预先填充:

<textarea id="envConfigJson" rows="5" class="form-control"
                          placeholder="Configuration json" ng-keyup="editConfigEnv()"
                          ng-disabled='!selectedConfigurationEnv'></textarea>

在预填充时,文本区域的父对象通过ng if隐藏。有没有办法设置这个文本区域的值,即使它在页面中是隐藏的?我能够通过jquery:确认val属性被分配了正确的值

$('#envConfigJson').val("correct value here"); 

如果这不可能,我会很乐意重新思考我的人口逻辑。

您所需要做的就是设置范围模型值并在文本区域上使用ngModel指令。因此:

<textarea id="envConfigJson" rows="5" class="form-control"
          placeholder="Configuration json" 
          ng-model="textModel"
          ng-keyup="editConfigEnv()"
          ng-disabled='!selectedConfigurationEnv'></textarea>

现在,当父ngIf显示文本区域时,您将看到它预先填充了textModel模型提供的值。

演示:http://plnkr.co/edit/4D4O6b9BQSDMXEBKFAX3?p=preview

在我的特殊情况下,我需要用ng-if代替ng-show

这允许我的内容在屏幕上呈现,但被隐藏。ng-if正在阻止内容被完全呈现。