diff --git a/core/js/share.js b/core/js/share.js
index 0b65e153093cf225294a9b96eeb9b6f230c9855a..02d16cbd89888ee91f73c395b98c03377e8bee09 100644
--- a/core/js/share.js
+++ b/core/js/share.js
@@ -718,13 +718,21 @@ $(document).ready(function() {
 	$(document).on('change', '#dropdown #expirationDate', function() {
 		var itemType = $('#dropdown').data('item-type');
 		var itemSource = $('#dropdown').data('item-source');
+
+		$(this).tipsy('hide');
+		$(this).removeClass('error');
+
 		$.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'setExpirationDate', itemType: itemType, itemSource: itemSource, date: $(this).val() }, function(result) {
 			if (!result || result.status !== 'success') {
+				var expirationDateField = $('#dropdown #expirationDate');
 				if (!result.data.message) {
-					OC.dialogs.alert(t('core', 'Error setting expiration date'), t('core', 'Error'));
+					expirationDateField.attr('original-title', t('core', 'Error setting expiration date'));
 				} else {
-					OC.dialogs.alert(result.data.message, t('core', 'Error'));
+					expirationDateField.attr('original-title', result.data.message);
 				}
+				expirationDateField.tipsy({gravity: 'n', fade: true});
+				expirationDateField.tipsy('show');
+				expirationDateField.addClass('error');
 			}
 		});
 	});