2016-08-04 121 views
0

我需要保存的复选框的价值,但它不工作如何获取价值形态复选框,离子框架

HTML:

<ion-checkbox value="2" checked="true" ng-model="data.agreed"> 
       By selecting this... 
       </ion-checkbox> 

app.js

$http.post(link, { agreed: $scope.data.agreed }); 
+0

你是什么意思它不工作? –

+0

它没有得到复选框的值,是否有不同的方式来做到这一点? – velvetInk

+0

在你的控制器中添加这行'$ scope.data = {agree:false};' 然后试试吧。目标是在对任何内容做任何更改之前先初始化此变量。然后你可以使用点击事件来修改 –

回答

1

尽量遵循任何一个,你会得到解决,

<ion-checkbox ng-checked='data.agreed === "true"' 
       ng-model="data.agreed" 
       ng-true-value="'true'" 
       ng-false-value="'false'" 
> 
By checked value {{data.agreed}} 
</ion-checkbox> 


<ion-checkbox ng-checked='data.agreed === "1"' 
       ng-model="data.agreed" 
       ng-true-value="'1'" 
       ng-false-value="'0'" 
> 
By checked value {{data.agreed}} 
</ion-checkbox> 


<ion-checkbox ng-checked='data.agreed === "yes"' 
        ng-model="data.agreed" 
        ng-true-value="'yes'" 
        ng-false-value="'no'" 
> 
By checked value {{data.agreed}} 
</ion-checkbox> 

如果您可以通过使用NG-改变指令一样后续调用的函数,

ng-change ="example(data.agreed)" 

然后在控制器写一个函数像以下,

$scope.example =function(agreed) 
{ 
    console.log(agreed); 
    alert(agreed); 
} 
0

这将适用于你

$http.post(link, { agreed: $scope.data.agreed === 1 ? true: false }) 
+0

这就是问题我在上面询问 – velvetInk

+0

最初它不清楚,这就是为什么我提出后续问题的原因,我希望这可以回答你的问题 –

+0

这是行不通的我仍然得到1 – velvetInk

0

试试这个

在你看来

<ion-checkbox ng-model = "isChecked" ng-change = "isSalesPersonCheck(!isChecked)">Sales Person</ion-checkbox> 

控制器中

$scope.isSalesPersonCheck = function(a){ 
    if(a == false) 
    $scope.isChecked = true 
    else 
    $scope.isChecked = false//: isChecked is true when checked, false when not 
    alert($scope.isChecked) 
}