diff --git a/scp/js/scp.js b/scp/js/scp.js
index d1493f59036b5e762cdf3ccfefa02e96c35e573b..f3d9ab3e1f84a7bf7e0bcd147bcb4b63fa213e50 100644
--- a/scp/js/scp.js
+++ b/scp/js/scp.js
@@ -391,6 +391,7 @@ var scp_prep = function() {
         var fObj = $(this);
         var elem = $('#advanced-search');
         $('#result-count').html('');
+        fixupDatePickers.call(this);
         $.ajax({
                 url: "ajax.php/tickets/search",
                 data: fObj.serialize(),
@@ -447,18 +448,21 @@ var scp_prep = function() {
 
 $(document).ready(scp_prep);
 $(document).on('pjax:end', scp_prep);
-$(document).on('submit', 'form', function() {
+var fixupDatePickers = function() {
     // Reformat dates
     $('.dp', $(this)).each(function(i, e) {
         var $e = $(e),
             d = $e.datepicker('getDate');
-        if (!d) return;
+        if (!d || $e.data('fixed')) return;
         var day = ('0'+d.getDate()).substr(-2),
             month = ('0'+(d.getMonth()+1)).substr(-2),
             year = d.getFullYear();
         $e.val(year+'-'+month+'-'+day);
+        $e.data('fixed', true);
+        $e.on('change', function() { $(this).data('fixed', false); });
     });
-});
+};
+$(document).on('submit', 'form', fixupDatePickers);
 
     /************ global inits *****************/