diff --git a/scp/js/ticket.js b/scp/js/ticket.js
index 19dd87940528b8044ba025b862532b1783fe5f57..93604d5923299ab5fe0544578a889dd4739edbf1 100644
--- a/scp/js/ticket.js
+++ b/scp/js/ticket.js
@@ -314,6 +314,11 @@ $.showImagesInline = function(urls, thread_id) {
     });
 };
 
+$.refreshTicketView = function() {
+    if (0 === $('.dialog:visible').length)
+        $.pjax({url: document.location.href, container:'#pjax-container'});
+}
+
 var ticket_onload = function($) {
     $('#response_options form').hide();
     $('#ticket_notes').hide();
diff --git a/scp/tickets.php b/scp/tickets.php
index dcc41fbc2923f7f0ff9a1b5aa260763205d2808c..f22f7a0645486103f2997abf0112487a0552ebd9 100644
--- a/scp/tickets.php
+++ b/scp/tickets.php
@@ -583,6 +583,10 @@ if($thisstaff->canCreateTickets()) {
 }
 
 
+$ost->addExtraHeader('<script type="text/javascript" src="js/ticket.js"></script>');
+$ost->addExtraHeader('<meta name="tip-namespace" content="tickets.queue" />',
+    "$('#content').data('tipNamespace', 'tickets.queue');");
+
 $inc = 'tickets.inc.php';
 if($ticket) {
     $ost->setPageTitle('Ticket #'.$ticket->getNumber());
@@ -615,16 +619,14 @@ if($ticket) {
         $nav->setActiveSubMenu(-1);
 
     //set refresh rate if the user has it configured
-    if(!$_POST && !$_REQUEST['a'] && ($min=$thisstaff->getRefreshRate()))
-        $ost->addExtraHeader('',
-            "window.ticket_refresh = setTimeout(function() { $.pjax({url: document.location.href, container:'#pjax-container'});},"
-            .($min*60000).");");
+    if(!$_POST && !$_REQUEST['a'] && ($min=$thisstaff->getRefreshRate())) {
+        $js = "window.ticket_refresh = setTimeout($.refreshTicketView,"
+            .($min*60000).");";
+        $ost->addExtraHeader('<script type="text/javascript">'.$js.'</script>',
+            $js);
+    }
 }
 
-$ost->addExtraHeader('<script type="text/javascript" src="js/ticket.js"></script>');
-$ost->addExtraHeader('<meta name="tip-namespace" content="tickets.queue" />',
-    "$('#content').data('tipNamespace', 'tickets.queue');");
-
 require_once(STAFFINC_DIR.'header.inc.php');
 require_once(STAFFINC_DIR.$inc);
 require_once(STAFFINC_DIR.'footer.inc.php');