I just wanted to add that this can be done with an object tag. The trick is that you have to create a new object for it to update with the new html.
function resetObj (linkToNewPage, idOfObjectToChange) {
var clone = document.getElementById(idOfObjectToChange).cloneNode(true);
clone.data = linkToNewPage;
var placeHolder = document.getElementById(idOfObjectToChange).parentNode;
placeHolder.removeChild(document.getElementById(idOfObjectToChange));
placeHolder.appendChild(clone);
}
Object elements don't update with new 'data' information for some reason without doing this. Basically you're cloning the node, applying the new information, then get the parent of the old node, remove the old node, append the new node.