diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js
index 89cf5521db1af28201cb94f7a95db79e4e7e22d2..d2db5b55213e9869183b3bb6c8eabda57ddc988d 100644
--- a/addons/web/static/src/js/search.js
+++ b/addons/web/static/src/js/search.js
@@ -1497,10 +1497,18 @@ instance.web.search.DateField = instance.web.search.Field.extend(/** @lends inst
         return instance.web.date_to_str(facetValue.get('value'));
     },
     complete: function (needle) {
+        var d;
         try {
-            var d = instance.web.str_to_date(instance.web.parse_value(needle, {'widget': 'date'}));
+            var t = (this.attrs && this.attrs.type === 'datetime') ? 'datetime' : 'date';
+            var v = instance.web.parse_value(needle, {'widget': t});
+            if (t === 'datetime'){
+                d = instance.web.str_to_datetime(v);
+            }
+            else{
+                d = instance.web.str_to_date(v);
+            }
         } catch (e) {
-            return false;
+            // pass
         }
         if (!d) { return $.when(null); }
         var date_string = instance.web.format_value(d, this.attrs);