[英]How to set new value of the Angular directive “ng-init” depending on the value of a <select> dropdown box?
因此,如果選擇了特定選項,我想為ng-init
設置一個值。 如果尚未選擇該特定選項,或者更改了該選項,我想刪除ng-init
值。
<select id="exSelect" onchange="checkButton()">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<textarea type="text"
class="form-control"
ng-model="vm.request.description"
name="description" id="description"
rows="10" placeholder="Must be atleast 50 characters."
ng-minlength="50"
required>
</textarea>
function checkButton()
{
var dropdownValue = document.getElementById("exSelect");
if (dropdownValue.value == "3") {
//Why does this not work?
document.getElementById("description").ng-init = 'Example attribute setting';
} else {
document.getElementById("description").ng-init = '';
}
}
這段代碼是我正在進行的工作的超簡化示例版本,但總體上類似於我正在嘗試做的更大程序的一小部分。 所以我想每次選擇一個新選項時運行checkButton()
函數。 如果選擇3,我希望if語句執行並設置元素的“ng-init”屬性,其中Id為“description”作為函數中的文本。 如果選擇了另一個選項,我希望checkButton()
函數再次運行,並將ng-init
屬性設置為空。
首先使用ng-model
和ng-change
指令:
<select id="exSelect" ng-model="vm.sel1" ng-change="vm.checkButton()">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
然后在你的控制器中:
vm.checkButton = function() {
if (vm.sel1 == "3") {
vm.request.description = 'Example attribute setting';
} else {
vm.request.description = = '';
};
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.