I use these codes for refreshing a part of my page :
var container = document.getElementById(\"mainForm:table_1\");
var content = container.innerHTML;
contai
IE9 and below doesn't support pushState. For unsupported browsers use history API. and also find some more list of polyfills here.
It seems IE 11 does not refresh an element if the new content set to its innerHTML is the same than its actual content.
My problem was that in <img src='some_url'...> the 'some_url' string was the same even if its content was changed.
To solve this I added milliseconds at the end of some_url so it becomes : <img src='some_url&time=' + new Date().getTime() ...>
for first part of your question do this :
var container = document.getElementById("mainForm:table_1").parentNode;
var content = container.innerHTML
container.innerHTML= content;
and for second part of your question as @JITHIN PV said you must use history.js
you can easily use it like this :
var History = window.History;
History.enabled ;
History.pushState("object or string", "object or string", "object or string");