diff --git a/core/misc/authorize.js b/core/misc/authorize.js
index aa4575d..a133061 100644
--- a/core/misc/authorize.js
+++ b/core/misc/authorize.js
@@ -10,15 +10,17 @@
 
 Drupal.behaviors.authorizeFileTransferForm = {
   attach: function(context) {
-    $('#edit-connection-settings-authorize-filetransfer-default').change(function() {
-      $('.filetransfer').hide().filter('.filetransfer-' + $(this).val()).show();
-    });
-    $('.filetransfer').hide().filter('.filetransfer-' + $('#edit-connection-settings-authorize-filetransfer-default').val()).show();
+    var $filetransfer = $('.filetransfer');
+    var $connectionSettings = $('#edit-connection-settings-authorize-filetransfer-default');
 
-    // Removes the float on the select box (used for non-JS interface).
-    if ($('.connection-settings-update-filetransfer-default-wrapper').length > 0) {
-      $('.connection-settings-update-filetransfer-default-wrapper').css('float', 'none');
+    function handleSettingsChange () {
+      $filetransfer.hide().filter('.filetransfer-' + $connectionSettings.val()).show();
     }
+    $connectionSettings.change(handleSettingsChange).triggerHandler('change');
+
+    // Removes the float on the select box (used for non-JS interface).
+    $('.connection-settings-update-filetransfer-default-wrapper').css('float', 'none');
+
     // Hides the submit button for non-js users.
     $('#edit-submit-connection').hide();
     $('#edit-submit-process').show();
