2016-11-01 6 views
0

Internet Explorerでは、入力タイプ=「日付」が機能せず、角度指示が投げられてjqueryUI datetimepickerが表示されます。JQueryを使用してDomから指示を削除します

しかし、クロムでは、どちらも表示されていますが、jqueryを使用して要素から指示を削除する方法はありますか?入力タイプの日付を許可するとhtml5の唯一のdatetimeが使用されます。

HTML:

<input id="date1" type="date" ng-model="date" jqdatepicker/> 
<br/> 
{{ date }} 

のjavascript:

var datePicker = angular.module('app', []); 

datePicker.directive('jqdatepicker', function() { 
    return { 
     restrict: 'A', 
     require: 'ngModel', 
     link: function (scope, element, attrs, ngModelCtrl) { 
      element.datepicker({ 
       dateFormat: 'mm/dd/yy', 
       onSelect: function (date) { 
        scope.date = date; 
        scope.$apply(); 
       } 
      }); 
     } 
    }; 
}); 

$(document).ready(function(){ 

$('#date1').removeAttr('jqdatepicker'); 
if ($('#date1')[0].type != 'date') { 

} 
}); 

http://jsfiddle.net/TAeNF/1420/

+1

角度指示を削除するためにjQueryを使用しないでください。指示を適用するかどうかを決定するには、angleを使用してください。 –

+0

jQueryを通してコードを削除したい場合は?または私達は傾ける? –

+0

いいえ可能です。それはちょうど "角度の道"ではない。あなたは角度とjQueryを混在させています。これを純粋に角度で行うことができます。 –

答えて

0

が、私は条件付きディレクティブ

http://jsfiddle.net/TAeNF/1421/

012から戻ってくることによって、これを解決
if ($('#date1')[0].type != 'date') { 
    return { 
     restrict: 'A', 
     require: 'ngModel', 
     link: function (scope, element, attrs, ngModelCtrl) { 
      element.datepicker({ 
       dateFormat: 'mm/dd/yy', 
       onSelect: function (date) { 
        scope.date = date; 
        scope.$apply(); 
       } 
      }); 
     } 
    }; 
    } 
    else 
    return null; 
}); 
関連する問題