Angular JS 使用 ng-model 获取日期输入的值
Angular JS get value of date input with ng-model
我尝试通过将它与 ng-model 绑定来获取输入日期 html 5 组件的值,如下所示:
<input type="date" id="dateFin" class="form-control" name="dateFin" ng-model="filtres.dateFin"
placeholder="dd/MM/yyyy" min="01/01/2014"/>
以及模型:
$scope.filtres.dateFin = null;
我认为绑定是正确的,因为当我将初始值更改为
$scope.filtres.dateFin = new Date();
初始值设置为当前日期。
但是当我尝试获取表单处理中的值时出现了问题。调试时我看到 $scope.filtres.dateFin
的值在更改时变得未定义。我应该覆盖 onchange 方法还是通过其他方式获取值?
https://jsfiddle.net/u2vkzemh/
html
<div ng-app ng-controller="testCtrl">
<input type="date" id="dateFin" name="dateFin" ng-model="filtres.dateFin"/>
{{filtres.dateFin}}
<button type="button" ng-click="show()">Show it</button>
{{testDate}}
</div>
控制器
function testCtrl($scope) {
$scope.show=function(){
$scope.testDate = $scope.filtres.dateFin;
}
}
好像还不错。
好的,非常感谢您的示例,我设法找到了问题所在。事实上,我有一个最小值和格式,如 placeholder="dd/MM/yyyy" min="01/01/2014"
,这阻止了我的代码与你的代码类似。
我认为问题出在最小参数的格式上,格式正确一切正常:
min="2014-01-01"
我的错误是删除了关于这个问题的代码示例,我只是想让它更具可读性。
我尝试通过将它与 ng-model 绑定来获取输入日期 html 5 组件的值,如下所示:
<input type="date" id="dateFin" class="form-control" name="dateFin" ng-model="filtres.dateFin"
placeholder="dd/MM/yyyy" min="01/01/2014"/>
以及模型:
$scope.filtres.dateFin = null;
我认为绑定是正确的,因为当我将初始值更改为
$scope.filtres.dateFin = new Date();
初始值设置为当前日期。
但是当我尝试获取表单处理中的值时出现了问题。调试时我看到 $scope.filtres.dateFin
的值在更改时变得未定义。我应该覆盖 onchange 方法还是通过其他方式获取值?
https://jsfiddle.net/u2vkzemh/
html
<div ng-app ng-controller="testCtrl">
<input type="date" id="dateFin" name="dateFin" ng-model="filtres.dateFin"/>
{{filtres.dateFin}}
<button type="button" ng-click="show()">Show it</button>
{{testDate}}
</div>
控制器
function testCtrl($scope) {
$scope.show=function(){
$scope.testDate = $scope.filtres.dateFin;
}
}
好像还不错。
好的,非常感谢您的示例,我设法找到了问题所在。事实上,我有一个最小值和格式,如 placeholder="dd/MM/yyyy" min="01/01/2014"
,这阻止了我的代码与你的代码类似。
我认为问题出在最小参数的格式上,格式正确一切正常:
min="2014-01-01"
我的错误是删除了关于这个问题的代码示例,我只是想让它更具可读性。