SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it possible to make a page viewer webpart automatically refresh or upgrade?

I have a report image which I am replacing every 15 minutes with a script but the Page Viewer on SharePoint isn't updating to reflect.

share|improve this question
Can't you just refresh the page where the viewer is placed with some JavaScript? – Robert Lindgren Aug 1 '13 at 5:37

You could simply apply your settings and add this snippet to your page:

(function () {
      //this snippet reloads an iframe on the page in a set interval
      function getIFrameBySrc(src){
        var matchingElements = [];
        //shim for querySelector heavily stolen from
        if(typeof document.querySelector == "undefined") {
            var allElements = document.getElementsByTagName('*');
            for (var i = 0, n = allElements.length; i < n; i++)
              if (allElements[i].getAttribute('src') === src)
                // Element exists with attribute. Add to array.
        } else{
          matchingElements = document.querySelectorAll('iframe[src-' + src + ']');
        return matchingElements;

      var iframes = getIFrameBySrc(''); //add the target url here

      function reloadIframe(){
        for(var i = 0; i < iframes.length; i++){
          //better but only works on same origin pages

          //does not work in certain versions of chrome
          iframes[i].src = iframes[i].src;

          //more info here 
      //if used on mds pages you need to check before setting this up multiple times
      setInterval(reloadIframe, 5000);//time in ms it takes to refresh 

Remember to check if you already attached a interval for MDS pages.

Live example

share|improve this answer

Rather than use the Page Viewer Web Part you could use the HTML Form Web Part and put the required javascript and iframe in to make this happen.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.