Angular checkboxes
JSFiddle for demos with angular framework
by Roshan Karunarathna
HTML
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://code.ionicframework.com/1.3.3/js/ionic.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
<div>
<div data-ng-controller="AppController">
<form class="list">
<div ng-repeat="(key, value) in db">
<input type=checkbox ng-model=value.checked ng-change="checka()">{{ value.text }}
</div>
<div ng-repeat="(key, value) in office">
<input type=checkbox ng-model=value.checked ng-change="checka()">{{ value.text }}
</div>
</form>
</div>
JavaScript
(function () {
"use strict";
var app = angular
.module("app", []);
app.controller('AppController', ['$scope', function($scope){
var id = localStorage.getItem("id");
var checkedData = [];
$scope.db = [
{text:'Firebird', checked:'false'},
{text:'MongoDB', checked:'false'},
{text:'mSQL', checked:'false'},
{text:'MySQL', checked:'false'},
{text:'Oracle', checked:'false'},
{text:'PostgreSQL', checked:'false'},
{text:'TinySQL', checked:'false'},
{text:'SQLite', checked:'false'},
{text:'SQL Server', checked:'false'},
{text:'Sybase', checked:'false'},
{text:'Outros', checked:'false'}
]
$scope.office = [
{text:'Microsoft Access', checked:'false'},
{text:'Microsoft Excel', checked:'false'},
{text:'Microsoft Outlook', checked:'false'},
{text:'Microsoft PowerPoint', checked:'false'},
{text:'Microsoft Word', checked:'false'},
{text:'Open Office', checked:'false'}
]
getData(checkedData, id).then(function(response){
console.log(JSON.stringify(response));
if(response.data === "\"Error\""){
$ionicLoading.hide();
navigator.notification.alert("Error");
}else{
checkedData = response.data[0].DATABASERESP;
console.log('checkedData', checkedData)
checkedData.data.checkedData = checkedData.data.checkedData.split(', ');
checkedData.data.checkedData.forEach(function(checkedName) {
$scope.db.forEach(function(dbItem){
if(dbItem.text == checkedName) {
dbItem.checked = true;
}
})
$scope.office.forEach(function(officeItem){
if(officeItem.text == checkedName) {
officeItem.checked = true;
}
})
})
console.log('$scope.office', $scope.office);
$scope.$apply();
...