Bootstrap   发布时间:2022-04-18  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了twitter-bootstrap – 将datetimepicker连接到angularjs大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要使用angular bootstrap创建一个带日期和时间的输入字段.
我发现这个 datetime picker看起来很兴奋我需要 – 在一个字段中的日期和时间,并阻止用户错误的版本.
我写了一个指令,datepickers开始,但它改变了视图,模型没有改变……我也试过onSELEct,但也没有任何反应
<div class="container container-fluid" ng-controller="Ctrl1">
2+2={{2+2}},var1={{var1}}
    <form class="form-horizontal" novalidate name="form" ng-submit="submit()">
    <div class="well">
        <div id="date" class="input-append" datetiR_684_11845@ez ng_model="var1">
            <input data-format="MM/dd/yyyy HH:mm:ss PP" type="text" id="input1" name="input1" ng_model="var1"></input>
    <span class="add-on">
      <i data-time-icon="icon-time" data-date-icon="icon-calendar">
      </i>
    </span>
        </div>
    </div>
</form>

</div>

JS

var project = angular.module('project',['ui.bootstrap']);

project.directive('datetiR_684_11845@ez',function() {
    return {
        reStrict: 'A',require : 'ngModel',link: function(scope,element,attrs,ngModelCtrl) {
            $(function(){
                element.datetiR_684_11845@epicker({
                    dateFormat:'dd/MM/yyyy hh:mm:ss',language: 'pt-BR',onSELEct:function (datE) {
                        //alert('zz');
                        ngModelCtrl.$setViewValue(datE);
                        scope.$apply();
                    }
                });
            });
        }
    };
});

project.controller('Ctrl1',['$scope','$rootScope',function(scope,rootScopE){

    scope.var1="123";

}]);

怎么解决?连接?

解决方法

所以,问题是:

>在div id = date元素中更改ng_modelper ng-model;
>从input元素中删除ng_model并实现ngModelCtrl.$render函数,以便对元素进行模型更改
>根据component docs

所以你需要以其他方式处理change事件,看看:

element.datetiR_684_11845@epicker({
  dateFormat:'dd/MM/yyyy hh:mm:ss',language: 'pt-BR'
  }).on('changeDate',function(E) {
    ngModelCtrl.$setViewValue(e.datE);
    scope.$apply();
  });

这是working Plnkr.

一些额外的提示

>如前所述,删除内部ng模型并实现ngModelCtrl.$render来处理模型更改
>使用template属性来封装组件的内部元素

使用$render一个非常简单的例子

var picker = element.data('datetiR_684_11845@epicker');

ngModelCtrl.$render = function() {
  if (ngModelCtrl.$modelvalue) {
    picker.setLocalDate(ngModelCtrl.$modelvalue);
  } else {
    picker.setLocalDate(null);
  }
}

大佬总结

以上是大佬教程为你收集整理的twitter-bootstrap – 将datetimepicker连接到angularjs全部内容,希望文章能够帮你解决twitter-bootstrap – 将datetimepicker连接到angularjs所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。