【发布时间】:2020-01-20 14:27:26
【问题描述】:
我是 angularjs 的新手。当从下拉列表中选择我的选项之一时,我想禁用 textarea。
我尝试使用 ng-disabled="(here my ng-model value)"
但这不起作用。
所以请帮我解决这个问题。 如果假设我必须在我的 JS 控制器函数中创建一个函数,那么请给我在我的 html 中调用它的函数和语法。
我将分享我的代码,给我一个更新会很有用。
<p style="text-align: justify; white-space: nowrap; position: relative; left: 30px">
<strong>{{'EMAIL_TYPE' | translate}}</strong>
<select id="emailOption" style="height: 26px; width: 190px; font-size: 13px; padding-top: 3px" class="emailType" data-ng-model="typeE" onchange="changeTemplate()">
<option value="" selected></option>
<option value="Alert Dashboard">{{'ALERT_DASHBOARD' | translate}}</option>
<option value="Survey Launch">{{'SURVEY_LAUNCH' | translate}}</option>
<option value="CSW Launch">{{'SCW_LAUNCH_TREATMENT' | translate}}</option>
<option value="Survey Close Treatment">{{'SURVEY_CLOSE_TREATMENT' | translate}}</option>
<option value="CSW Close">{{'CSW_CLOSE' | translate}}</option>
</select>
这是我的下拉值(选项)。
我希望只有在 option value="" (null) 时才禁用我的文本区域。
我的 textarea 代码是。
<div class="large-9 medium-12 small-12 columns body1">
<strong style="position: absolute; left: 80px">{{'BODY_AT_BEGINNIG'
| translate}} </strong>
<textarea id="emailBody1"
style="width: 70%; position: absolute; top: 15px; resize: none;"
rows="10" ></textarea>
给我解决方案,这样只有当我从下拉列表中选择的选项为空时,我的文本区域才会被禁用。
【问题讨论】:
-
我假设当您说:“我尝试使用 ng-disabled='(here my ng-model value)'”时,您的意思是
ng-disabled="typeE"?这些 HTML 元素是否与您正在使用的模型在同一范围内? -
是的。 ng-disabled="typeE=' ' || typeE=null" 我试过这段代码,还有 ng-readonly="typeE=' ' || typeE=null"
-
我也试过 ng-disabled="typeE=' ' && typeE=null" 我是否有任何语法错误。