1

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

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

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

在预填充时,textarea 的父级通过 ng-if 隐藏。有没有办法设置这个 textarea 的值,即使它从页面中隐藏?我能够确认通过 jquery 将正确的值分配给 val 属性:

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

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

4

2 回答 2

2

您需要做的就是ngModel在 textarea 上设置范围模型值和使用指令。所以它将是:

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

现在,当 parentngIf显示 textarea 时,您将看到它预先填充了textModel模型提供的值。

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

于 2015-03-30T19:02:26.480 回答
1

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

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

于 2015-03-30T19:07:20.827 回答