AngularJS 獲取ng-repeat動(dòng)態(tài)生成的ng-model值實(shí)例詳解
AngularJS 獲取ng-repeat動(dòng)態(tài)生成的ng-model值
最近做項(xiàng)目遇到了ng-model是ng-repeat動(dòng)態(tài)生成的,ng-model=”變量”,什么變量,是未知的,所以你無法在$scope."變量"取到值,就算取到值也是其中一個(gè)值,這樣的問題,經(jīng)過百度一番查找找到解決方案,這里記錄下,也行可以幫助到大家。
代碼
html
<div>
<div class="modal-header">
<h3 class="modal-title">用例集全局參數(shù)配置</h3>
</div>
<div class="modal-body">
<table class="table table-hover">
<thead>
<tr>
<th>參數(shù)</th>
<th>參數(shù)值</th>
</tr>
</thead>
<tbody ng-repeat="param in params">
<tr>
<td>{{param}}</td>
<td><input name="test" class="form-control" type="text" ng-trim="false" ng-model="$parent.conf[$index]"/></td>
</tr>
</tbody>
</table>
</div>
<div class="modal-footer">
<button class="btn btn-primary" ng-click="ok()">
應(yīng)用
</button>
<button class="btn btn-warning" ng-click="cancel()">取消</button>
</div>
</div>
JS
var ModalInstanceCtrl = function ($scope, $modalInstance, params) {
$scope.params = params;
$scope.conf = [];
$scope.ok = function () {
console.log($scope.conf);
$modalInstance.close($scope.conf);
};
$scope.cancel = function () {
$modalInstance.dismiss('cancel');
};
};
問題描述
因?yàn)閚g-model是ng-repeat動(dòng)態(tài)生成的,ng-model=”變量”,什么變量,是未知的,所以你無法在$scope."變量"取到值,就算取到值也是其中一個(gè)值,這個(gè)問題困擾了我一天,終于解決了。
解決方法
首先ng-model設(shè)置為$parent.conf[$index]:
- 用$parent的原因是ng-repeat產(chǎn)生的,他會(huì)為每一個(gè)input生成一個(gè)子scope對(duì)象,而$parent表示用父類的scope,這樣我們?cè)贘S文件中才能取到該值。
- $index代表的意思是ng-repeat="param in params"遍歷時(shí)的下標(biāo)
- conf是我們?cè)趈s中的變量名實(shí)際效果
我們?cè)赾ontroller中定義了一個(gè)$scope.conf = [];就是一個(gè)數(shù)組,剛好通過上面的代碼,為該數(shù)組添加了元素,然后我們通過scope.conf剛好把ng-model的所有元素自動(dòng)保存了。
實(shí)際效果:

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
快速學(xué)習(xí)AngularJs HTTP響應(yīng)攔截器
任何時(shí)候,如果我們想要為請(qǐng)求添加全局功能,例如身份認(rèn)證、錯(cuò)誤處理等,在請(qǐng)求發(fā)送給服務(wù)器之前或服務(wù)器返回時(shí)對(duì)其進(jìn)行攔截,是比較好的實(shí)現(xiàn)手段2015-12-12
動(dòng)態(tài)創(chuàng)建Angular組件實(shí)現(xiàn)popup彈窗功能
這篇文章主要介紹了動(dòng)態(tài)創(chuàng)建angular組件實(shí)現(xiàn)popup彈窗,需要的朋友可以參考下2017-09-09
Angular環(huán)境搭建及簡(jiǎn)單體驗(yàn)小結(jié)
Angular基于TypeScript和react、vue相比 Angular更適合中大型企業(yè)級(jí)項(xiàng)目,本文通過實(shí)例代碼給大家分享Angular環(huán)境搭建及簡(jiǎn)單體驗(yàn),感興趣的朋友跟隨小編一起學(xué)習(xí)吧2021-05-05
Angular異步執(zhí)行學(xué)習(xí)之zone.js使用
這篇文章主要為大家介紹了Angular異步執(zhí)行學(xué)習(xí)之zone.js使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
Angular?Component屬性綁定target和attr.target的區(qū)別分析
這篇文章主要介紹了Angular?Component屬性綁定target和attr.target的區(qū)別分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
用AngularJS來實(shí)現(xiàn)監(jiān)察表單按鈕的禁用效果
本篇文章主要介紹了用AngularJS來實(shí)現(xiàn)監(jiān)察表單按鈕的禁用效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-11-11

