【发布时间】:2016-02-07 15:21:10
【问题描述】:
我的 HTML 文件中有一个输入框。如果用户输入一个数字,我想返回 getZip(),如果用户输入一个字符串,我想返回 getCity()。这可能与单个输入框有关,还是我需要为 type="text" 指定一个输入框和为 type="number" 指定一个输入框?
view.html:
<div ng-app="myApp" ng-controller="myCtrl">
<form ng-submit="getData()">
<input type="search" ng-model="location">
<button>Get Weather</button>
</form>
myApp.js:
第一次尝试:
$scope.getData = function() {
switch (angular.isString($scope.location)) {
case true:
return $scope.getCity();
break;
case false:
return $scope.getZip();
break;
default:
return "Location not recognized";
};
};
第二次尝试:
$scope.getData = function () {
if (angular.isString($scope.location)) {
return $scope.getCity()
} else {
return $scope.getZip()
};
看起来即使输入的是一个数字,一旦通过作用域,它无论如何都是一个字符串。有没有解决的办法?提前致谢!
【问题讨论】:
标签: javascript html angularjs input scope