我有这个HTML
findAll()
我的登录功能看起来像这样。
<ons-input id="username" modifier="underbar" name="username" placeholder="Nombre de usuario" float ng-model="page.username" ></ons-input>
<ons-input id="password" modifier="underbar" name="password" type="password" placeholder="Contraseña" float ng-model="page.password" ></ons-input>
<img ng-click="login()" class="boton-login" src="img/boton_acceder.png"></img>
我收到错误:$scope.login = function(){
if ($scope.page.username.length==0 || typeof $scope.page.username =="undefined"){
ons.notification.alert("Error");
}else{
//More code.
}
}
,我尝试使用Cannot read property 'username' of undefined
和$dirty
的angularjs类,但仍然遇到同样的问题,所以如果有人知道怎么知道我的当我点击按钮时输入为空,请帮帮我
答案 0 :(得分:1)
这是因为你没有定义page
。
我建议你这样做:
app.controller('demoCtrl', function ($scope) {
$scope.page = { username: new String() };
$scope.login = function () {
if ($scope.page.username !== undefined)
if ($scope.page.username.length === 0)
console.log('error');
else
console.log('ok');
}
});
答案 1 :(得分:0)
$scope.page
时, $scope.page.username
未定义。如果你检查一下是否定义了$scope.page
,那么应该有效:
$scope.login = function(){
if ($scope.page.username.length==0){
ons.notification.alert("Error");
}else{
//More code.
}
}
此外,如果您希望$scope.page
对象始终存在(从头开始),您应该在控制器中定义$scope.page = { username: '' }
。