[英]checked checkbox values in angularjs controller
在應用程序中,有一個multiselect-dropbox。 當獲得多選下拉列表中選中項目的值時,它具有
scope.names = [1,2,4,5]這意味着我從列表中選擇了4個名稱。 在更改期間,我選擇了其他名稱,例如scope.names = [3,4]。 如何使用angularjs控制器執行此操作? 我收到以下錯誤,
TypeError: Cannot read property 'indexOf' of undefined
at Scope.$scope.isChecked (mmMultiSelect.js:85)
at $parseFunctionCall (angular.js:12332)
at Object.expressionInputWatch (angular.js:12735)
at Scope.$get.Scope.$digest (angular.js:14217)
at Scope.$get.Scope.$apply (angular.js:14488)
at HTMLDivElement.<anonymous> (angular.js:22954)
at HTMLDivElement.jQuery.event.dispatch (jquery.js:4409)
at HTMLDivElement.jQuery.event.add.elemData.handle (jquery.js:4095)
#UPDATE
scope.names = [];
scope.onNamesSelected = function() {
var names = scope.names //get selected name list in array as [1,2,3]
scope.onNamesChanged();
}
scope.onNamesChanged = function() {
scope.names = [3,5]; //need to check this value in UI.
}
這是來自瀏覽器的html選項,選中時為復選框。
<div id="NameItem4CheckBox" class="ng_checkbox" ng-class="{'ng-checkbox-hover': liHover}" ng-tool-tip="" ng-click="onClick()">
<span ng-class="{'selectedCB': isChecked(c[ngOptionId], c[ngOptionName])}" class="selectedCB"></span>
</div>
不檢查時。
<div id="NameItem0CheckBox" class="ng_checkbox" ng-class="{'ng-checkbox-hover': liHover}" ng-tool-tip="" ng-click="onClick()">
<span ng-class="{'selectedCB': isChecked(c[ngOptionId], c[ngOptionName])}"></span>
</div>
另外,我沒有檢查來自html的字段。 類“ CSBSelected”標識了選中的復選框。 如何在控制器中實施。
沒有看到任何代碼,您似乎正在將未定義的內容傳遞到控制器的isChecked()函數中。 如果是這種情況,則可以檢查undefined / null。 或者,您可能要檢查傳遞的內容與預期的內容完全相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.