У меня есть страница с iframe, которая не имеет источника при загрузке страницы и просто использует жестко запрограммированный html, например:
<iframe id="theframe" src="">
<html>
<body>
<form name="theform" action="http://domainB.com/new" method="POST">
<input type="text" />
</form>
</body>
</html>
</iframe>
Форма затем отправляется в jQuery с использованием
$('#theform').submit();
Это приводит к тому, что источник iframe меняется с ничего (тот же домен) на domainB.com, где данные формы отправляются и сохраняются.
Затем я задерживаю 1сек, чтобы отобразить сообщение об успешном завершении, а затем хочу вернуть фрейм к его исходному содержимому, изменив исходный источник на ничто (тот же домен) и добавив исходную форму, например:
$('iframe').attr('src', '');
$('iframe').contents().find('body').empty();
$('iframe').contents().find('body').append('<form name="theform" action="http://domainB.com/new" method="POST"><input type="text" /></form>');
Однако это не работает ... Является ли это межсайтовым скриптингом, хотя я не пытаюсь получить доступ к внутреннему контенту домена B, я просто устанавливаю src iframe обратно на domainA ??
Если это так, есть ли способ установить src после того, как он был изменен на другой домен?
(Когда я писал последнее предложение, я понял, что могу просто удалить iframe и заменить его новым, я думаю?), Но я все же хотел бы знать, считается ли изменение источника межсайтовым, и поэтому не работает?)