Index: wp-admin/js/utils.dev.js
===================================================================
--- wp-admin/js/utils.dev.js	(revision 19732)
+++ wp-admin/js/utils.dev.js	(working copy)
@@ -142,3 +142,84 @@
 
 	return wpCookies.getHash('wp-settings-' + userSettings.uid) || {};
 }
+function dayincrement(e,field) {
+    var keynum
+
+    if(window.event) {// IE
+        keynum = e.keyCode
+    } else if(e.which) {// Netscape/Firefox/Opera
+        keynum = e.which
+    }
+    if (keynum == 38) {
+    	if(field.value >= 31) {
+    		return false
+    	}
+        field.value = parseInt(field.value)+ 1;
+    } else if (keynum == 40) {
+    	if(field.value <= 1) {
+    		return false
+    	}
+        field.value = parseInt(field.value) - 1;
+    }
+    return false;
+}
+function yearincrement(e,field) {
+    var keynum
+
+    if(window.event) {// IE
+        keynum = e.keyCode
+    } else if(e.which) {// Netscape/Firefox/Opera
+        keynum = e.which
+    }
+    if (keynum == 38) {
+        field.value = parseInt(field.value)+ 1;
+    } else if (keynum == 40) {
+    	if(field.value <= 1900) {
+    		return false
+    	}
+        field.value = parseInt(field.value) - 1;
+    }
+    return false;
+}
+function hourincrement(e,field) {
+    var keynum
+
+    if(window.event) {// IE
+        keynum = e.keyCode
+    } else if(e.which) {// Netscape/Firefox/Opera
+        keynum = e.which
+    }
+    if (keynum == 38) {
+    	if(field.value >= 23) {
+    		return false
+    	}
+        field.value = parseInt(field.value)+ 1;
+    } else if (keynum == 40) {
+    	if(field.value <= 0) {
+    		return false
+    	}
+        field.value = parseInt(field.value) - 1;
+    }
+    return false;
+}
+function minuteincrement(e,field) {
+    var keynum
+
+    if(window.event) {// IE
+        keynum = e.keyCode
+    } else if(e.which) {// Netscape/Firefox/Opera
+        keynum = e.which
+    }
+    if (keynum == 38) {
+    	if(field.value >= 59) {
+    		return false
+    	}
+        field.value = parseInt(field.value)+ 1;
+    } else if (keynum == 40) {
+    	if(field.value <= 0) {
+    		return false
+    	}
+        field.value = parseInt(field.value) - 1;
+    }
+    return false;
+}
\ No newline at end of file
Index: wp-admin/includes/template.php
===================================================================
--- wp-admin/includes/template.php	(revision 19732)
+++ wp-admin/includes/template.php	(working copy)
@@ -593,10 +593,10 @@
 	}
 	$month .= '</select>';
 
-	$day = '<input type="text" ' . ( $multi ? '' : 'id="jj" ' ) . 'name="jj" value="' . $jj . '" size="2" maxlength="2"' . $tab_index_attribute . ' autocomplete="off" />';
-	$year = '<input type="text" ' . ( $multi ? '' : 'id="aa" ' ) . 'name="aa" value="' . $aa . '" size="4" maxlength="4"' . $tab_index_attribute . ' autocomplete="off" />';
-	$hour = '<input type="text" ' . ( $multi ? '' : 'id="hh" ' ) . 'name="hh" value="' . $hh . '" size="2" maxlength="2"' . $tab_index_attribute . ' autocomplete="off" />';
-	$minute = '<input type="text" ' . ( $multi ? '' : 'id="mn" ' ) . 'name="mn" value="' . $mn . '" size="2" maxlength="2"' . $tab_index_attribute . ' autocomplete="off" />';
+	$day = '<input type="text" onkeydown="dayincrement(event, this)" ' . ( $multi ? '' : 'id="jj" ' ) . 'name="jj" value="' . $jj . '" size="2" maxlength="2"' . $tab_index_attribute . ' autocomplete="off" />';
+	$year = '<input type="text" onkeydown="yearincrement(event, this)" ' . ( $multi ? '' : 'id="aa" ' ) . 'name="aa" value="' . $aa . '" size="4" maxlength="4"' . $tab_index_attribute . ' autocomplete="off" />';
+	$hour = '<input type="text" onkeydown="hourincrement(event, this)" ' . ( $multi ? '' : 'id="hh" ' ) . 'name="hh" value="' . $hh . '" size="2" maxlength="2"' . $tab_index_attribute . ' autocomplete="off" />';
+	$minute = '<input type="text" onkeydown="minuteincrement(event, this)" ' . ( $multi ? '' : 'id="mn" ' ) . 'name="mn" value="' . $mn . '" size="2" maxlength="2"' . $tab_index_attribute . ' autocomplete="off" />';
 
 	echo '<div class="timestamp-wrap">';
 	/* translators: 1: month input, 2: day input, 3: year input, 4: hour input, 5: minute input */
@@ -1380,7 +1380,6 @@
 wp_enqueue_style( 'colors' );
 ?>
 <script type="text/javascript">
-//<![CDATA[
 addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
 function tb_close(){var win=window.dialogArguments||opener||parent||top;win.tb_remove();}
 var userSettings = {
@@ -1395,7 +1394,6 @@
 	thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
 	decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
 	isRtl = <?php echo (int) is_rtl(); ?>;
-//]]>
 </script>
 <?php
 do_action('admin_enqueue_scripts', $hook_suffix);
@@ -1409,13 +1407,11 @@
 </head>
 <body<?php if ( isset($GLOBALS['body_id']) ) echo ' id="' . $GLOBALS['body_id'] . '"'; ?> class="wp-admin no-js iframe <?php echo apply_filters( 'admin_body_class', '' ) . ' ' . $admin_body_class; ?>">
 <script type="text/javascript">
-//<![CDATA[
 (function(){
 var c = document.body.className;
 c = c.replace(/no-js/, 'js');
 document.body.className = c;
 })();
-//]]>
 </script>
 <?php
 }
@@ -1518,7 +1514,6 @@
 function compression_test() {
 ?>
 	<script type="text/javascript">
-	/* <![CDATA[ */
 	var testCompression = {
 		get : function(test) {
 			var x;
@@ -1565,7 +1560,6 @@
 		}
 	};
 	testCompression.check();
-	/* ]]> */
 	</script>
 <?php
 }
@@ -1735,7 +1729,6 @@
 
 		?>
 		<script type="text/javascript">
-		//<![CDATA[
 		jQuery(document).ready( function($) {
 			var options = <?php echo json_encode( $args ); ?>;
 
@@ -1753,7 +1746,6 @@
 
 			$('<?php echo $selector; ?>').pointer( options ).pointer('open');
 		});
-		//]]>
 		</script>
 		<?php
 	}
