Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   не работает метод load(); в DOM (https://javascript.ru/forum/events/45992-ne-rabotaet-metod-load-%3B-v-dom.html)

danik.js 24.03.2014 02:47

Внедряй нужные данные прямо на страницу. Или тебе прям кровь из носу нужен отдельный файл?
Хром по умолчанию не разрешает XMLHttpRequest запросы к файловой системе. Для разрешения нужно его (браузер) запустить с определенным флагом.

Антон C 24.03.2014 08:45

Да, мне обязательно нужно в XML файле

Артем Левин 31.03.2014 08:16

Попробуйте использовать либу JQUERY. http://habrahabr.ru/post/42426/

danik.js 31.03.2014 13:20

Артем Левин, и чем она тут поможет?

То есть
nativeFunction()  // не работает


Но если
function wrapper() {
    nativeFunction(); // вдруг с чего-то начнет работать?
}

wrapper()


Какой в этом смысл?

Blacksmouker 08.04.2014 20:07

Чтобы не плодить темы присоединюсь к этой. Да и задача похожа.
Подскажите, как решить подобную задачу если файл не один.
Пробовал вместо наименования подставить регулярное выражение - он не видит его - приходи null.

danik.js 08.04.2014 20:23

Blacksmouker, где код. куда ты подставил регулярку. В чем заключается сходство твоей задачи?

Цитата:

Сообщение от Blacksmouker
приходи null

Хорошо, я ему передам, что ты его звал.

Blacksmouker 09.04.2014 09:58

Цитата:

Сообщение от danik.js (Сообщение 306799)
Blacksmouker, где код. куда ты подставил регулярку. В чем заключается сходство твоей задачи?

У меня есть массив файлов xml. Файлы маленькие от 3 до 30 кб каждый, но их много - от десятка, до сотни за раз (точное количество заранее неизвестно). Каждый имеет наименование 7-ми значный цифровой код.

Напрашивался парсер на php, но по техническим причинам необходимо это дело выполнить локально, без запросов к серверу прямо на машине клиента.

От Xml в данном случае тоже не уйти - данные приходят именно в этом формате.


<html>
	<head>
		<meta charset="utf-8"/>
	</head>
	<body>
	<script type="text/javascript"> 
		function loadXMLDoc(dname) 
		{
			try
  			{
  			xmlDoc=new ActiveXObject("Microsoft.XMLDOM");	
			}
			catch(e)	
			{
  				try 
    				{
			xmlDoc=document.implementation.createDocument("","",null);
    				}
  				catch(e) {alert(e.message)}
  			}
			try 
  			{xmlDoc
 				xmlDoc.async=false;
  				xmlDoc.load(dname);
  				return(xmlDoc);
  			}
			catch(e) {alert(e.message)}
			return(null);
		}
		
		var file_name = /\d{7}.xml/g;
		xmlDoc=loadXMLDoc(file_name);
		
		
		document.write('<table class="warning" border="2px" bgcolor="silver">');
			document.write('<tr align="center" bgcolor="gray">');
				document.write('<td>Дата события</td>');
				document.write('<td>Полное наименование</td>');
				document.write('<td>Заголовок</td>');
				
			
			document.write('</tr>');
			
			
			for (i=0; i<xmlDoc.length; i++){
			
			document.write('<tr>');
				
				
				var x=xmlDoc.getElementsByTagName("EVENT_DATE");
				var y=xmlDoc.getElementsByTagName("FULL_NAME_RUS");
				var z=xmlDoc.getElementsByTagName("EVENT_HEADER");

			
				document.write('<td>' + x[i].childNodes[0].nodeValue + '</td>'); 
				document.write('<td>' + y[i].childNodes[0].nodeValue + '</td>');
				document.write('<td>' + z[i].childNodes[0].nodeValue + '</td>');
			
			document.write('<tr>');
			
			}
		document.write('</table>');
  		
	</script>
	</body>
</html>

danik.js 09.04.2014 13:33

Регулярка тут явно не поможет. Если в IE есть возможность получить список файлов из папки - то это то, что нужно. Не спец по ActiveX, так что на этом моя помощь заканчивается.


Часовой пояс GMT +3, время: 04:53.