Я использую checkbox, который выполняет просьбу AJAX, чтобы менять состояние реестра 1
в 0
и наоборот.
Это код, что renderiza каждый сайт:
{{site.SiteStatus}}
{{site.SiteName}}
{{site.SiteDomain}}
Visitas
125
Standard Plans
1569
Services
824
... и этот соответствующий драйвер:
app.controller('SitesController', function($scope, $state, SitesFactory) {
$scope.StatusErr = "";
$scope.SiteChecked = [];
$scope.init = function(){
SitesFactory.lists().success(function (data) {
$scope.sites = data.data;
angular.forEach($scope.sites, function(site,key){
console.log(site.SiteStatus)
if(site.SiteStatus > 0){
$scope.SiteChecked[site.SiteId] = true;
}else{
$scope.SiteChecked[site.SiteId] = false;
}
});
}).error(function () {
console.log('No se encontraron paginas')
})
}
$scope.add = function(){
SitesFactory.add($scope.SiteName, $scope.SiteDomain).success(function (data) {
var id = data.SiteId;
$state.go('sitio',{SiteId : id});
}).error(function (error) {
swal("Algo ha ido mal", error.error, "error");
})
}
$scope.status = function(Site){
var Status = Site ? 1 : 0;
SitesFactory.status(Site.SiteId, Status).success(function (data) {
$scope.StatusErr = "switch-button-success";
}).error(function () {
$scope.StatusErr = "switch-button-danger";
swal("Algo ha ido mal", error.error, "error");
})
}
$scope.init();
});
Код работает правильно и реализует просьбу удовлетворительной формы, но когда, по умолчанию загрузив страницу, стоимость checkbox 1
, этот не происходит в 0
.
Я это показываю с изображением:
Поскольку ты работаешь с одним checkbox
, я рекомендую тебе снимать tag ng-false-value
и ng-true-value
, так как ты нуждаешься в стоимости 0
и 1
, типы стоимости, что по умолчанию работает checkbox. Если ты будешь нуждаться в стоимости, отличной от 0
, и 1
смоги занимать их.
С другой стороны, если стандартной настройки должно быть 1
, я рекомендую тебе работать прямо с ng-model
с драйвера. Удалять tag ng-checked
и заявлять в драйвере $scope.site.SiteStatus = true;
<input type="checkbox" ng-model="site.SiteStatus" name="svt{{site.SiteId}}" id="svt{{site.SiteId}}" ng-change="status(site)">