我的controller.js中有一个数组。我需要用户插入输入文本值,如果正确,则显示一件事,如果不同则显示另一件事。我有多个实例,然后我计划用<body ng-app="formAdictos">
<div ng-controller="MyController">
<div ng-repeat="list in lista"></div>
<div ng-switch on="lis">
<input type="text" ng-model="lis">
<div ng-switch-when="{{lista[0]}}">S</div>
<div ng-switch-when={{lista[1]}}>Hola</div>
<div ng-switch-default>Texto para cuando no es ni A ni B</div>
</div>
</div>
</body>
做,但不要让我获得变量范围的值。我怎么能解决它?
的index.html
function MyController($scope, $http) {
$scope.items = [];
$scope.lista = [];
$http({method : 'GET',url : 'https://api.parse.com/1/classes/cupon',
headers: { 'X-Parse-Application-Id':'XXX',
'X-Parse-REST-API-Key':'XXX'}})
.success(function(data, status) {
for(var i = 0; i < data.results.length; i++){
cupo = data.results[i].cupon50;
$scope.lista[i] = cupo;
}
console.log($scope.lista);
})
.error(function(data, status) {
alert("Error");
});
}
angular.module('formAdictos').controller('MyController', MyController);`
controller.js
try
{
$age_from = $_POST['from'];
$age_to = $_POST['to'];
$stmt = $db->prepare("CALL proc_report_filtered(:age_from,:age_to)");
$stmt->bindParam(':age_from',$age_from);
$stmt->bindParam(':age_to',$age_to);
$records = $stmt->execute();
$records->setFetchMode(PDO::FETCH_ASSOC);
}
catch (PDOException $e)
{
die("Some problem getting data from database !!!" . $e->getMessage());
}
列出一个包含三个值的数组。
lista = [“hi”,“good”,“bad”]这是http调用的结果
答案 0 :(得分:1)
嗯,我不是真正的转换指令,它似乎没有用,所以我带来了别的东西。
function MyController($scope, $http) {
$scope.items = [];
$scope.lista = [];
$scope.lis = "";
$scope.lista = [{key:"hi", value:"S"}, {key:"good", value:"Hola"}] ;
$scope.isInList = false;
$scope.checkIsInList = function(lis){
$scope.isInList = false;
for(var i =0; i < $scope.lista.length; i++){
if($scope.lista[i].key === lis){
$scope.isInList = true;
return;
}
}
}
}
angular.module('formAdictos', []).controller('MyController', MyController);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="formAdictos">
<div ng-controller="MyController">
<input type="text" ng-model="lis" ng-change="checkIsInList(lis)">
<div ng-repeat="item in lista">
<div ng-if="item.key == lis"><span ng-bind="item.value"></span></div>
</div>
<div ng-if="isInList==false">Texto para cuando no es ni A ni B</div>
lis : {{lis}}
</div>
</div>
&#13;
这项工作按预期进行,我必须使用布尔值管理默认值。
然而,正如您所看到的,您需要将服务器中的列表与对象列表中的匹配值列表合并,以使其像我一样工作。另一种方法是使用2个数组,其中匹配具有相同的索引,并使用$index
提供的ng-repeat