Гость
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / вывод iframe через раз / 1 сообщений из 1, страница 1 из 1
14.01.2022, 00:33
    #40126448
Co_balt
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод iframe через раз
Использую вывод результата запроса SOAP в iframe. При первом вызове выводит сразу. При последующих сначала очищает iframe, а при повторном вызове выводит как надо. Понимаю, что как-то связано с iframeDoc.readyState == 'complete', но как им управлять не знаю. Где я накосячил?

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
         function Execute() {

	var xmlhttp = new XMLHttpRequest();
	const parser = new DOMParser();
 	var iframe = document.getElementById('bottom');
  	var iframeDoc = iframe.contentWindow.document;

	xmlhttp.open('POST', 'http://10.4.200.30:50100/XMII/SOAPRunner/SAPMEReports/wrongSFP/getShopOrder', true);

	// build SOAP request
	var sr =
		'<?xml version="1.0" encoding="utf-8"?>' +
		'<x:Envelope    xmlns:x="http://schemas.xmlsoap.org/soap/envelope/"    xmlns:xmi="http://www.sap.com/xMII">' +
		'<x:Header/>' +
		'<x:Body>' +
		'<xmi:XacuteRequest>' +
		'<xmi:InputParams>' +
		'<xmi:Site>' + document.getElementById("Site").value + '</xmi:Site>' +
		'<xmi:StartDate>' + document.getElementById("StartDate").value + '</xmi:StartDate>' +
		'<xmi:EndDate>' + document.getElementById("EndDate").value + '</xmi:EndDate>' +
		'</xmi:InputParams>' +
		'</xmi:XacuteRequest>' +
		' </x:Body>' +
		'</x:Envelope>';

	xmlhttp.onreadystatechange = function() {

		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				iframe.src = "about:blank";
				if (iframeDoc.readyState == 'complete') {
					const doc = parser.parseFromString(xmlhttp.responseText, "application/xml");
					iframeDoc.write(convert(doc.querySelector("OutputXML").textContent));
  				}
			}
			if (xmlhttp.status == 500) {
				alert("Введите дату!");
			}
		}
	}
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / вывод iframe через раз / 1 сообщений из 1, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]