Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 08.03.2016, 09:25
Аспирант
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 97

<?xml version="1.0" encoding="utf-8"?>
<category>
    <city name="Россия" link="db/russia/index.php">
		<station2>inf3_rus.tpl</station2>
	</city>
	<city name="Омск" link="db/omsk/index.php">
		<station2>tpl_omsk</station2>
	</city>
<city name="Омск" link="db/novosib/index.php">
		<station2>tpl_novosib</station2>
	</city>
</category>
Ответить с цитированием
  #22 (permalink)  
Старый 08.03.2016, 10:57
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

Содержание xml/city.xml и xml/db.xml надо. Хотя бы небольшой макет с несколькими дефолтными значениями. И что это за файлы inf3_omsk.tpl inf3_novosib.tpl мне непонятно.
Ответить с цитированием
  #23 (permalink)  
Старый 08.03.2016, 15:44
Аспирант
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 97

файл city.xml
<?xml version="1.0" encoding="utf-8"?>
<category>
    <city name="Россия" link="db/russia/ac/index.php">
		<station2>tpl_rus</station2>
		</city>
	<city name="Омск" link="acura.php">
		<station2>tpl_omsk</station2>
		</city>
</category>

файл db.xml
<?xml version="1.0" encoding="utf-8"?>
<category>
<cat_a category="Категория_A">
    <marka name="AC" link="db/russia/ac/index.php">
		<model>AC</model>
		<model>Cobra</model>
	</marka>
	<marka name="Acura" link="acura.php">
		<model>CL</model>
		<model>CSX</model>
	</marka>
    <marka name="Alfa_Romeo" link="alfaromeo.php">
		<model>145</model>
		<model>146</model>
	</marka>
</cat_a>
<cat_b category="Категория_B">
	<marka name="Bentley" link="db/bentley.php">
		<model>Arnage</model>
		<model>Azure</model>
	</marka>
	<marka name="BMW" link="bmw.php">
		<model>1_Series</model>
		<model>2_Series</model>
	</marka>	
</category>

tpl это простой файл html только расширение tpl .
держи просил удалил

Последний раз редактировалось leon2009sp, 10.03.2016 в 07:05. Причина: слишком длинный код
Ответить с цитированием
  #24 (permalink)  
Старый 08.03.2016, 15:46
Аспирант
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 97

пример файла inf0.tpl
<html>
<head>
<script>
    function loadXMLDoc(filename) {
        if (window.ActiveXObject) {
            xhttp = new ActiveXObject("Msxml2.XMLHTTP");
        }
        else {
            xhttp = new XMLHttpRequest();
        }
        xhttp.open("GET", filename, false);
        try { xhttp.responseType = "msxml-document" } catch (err) { } // Helping IE11
        xhttp.send(null);
        return xhttp.responseXML;
    }
    document.addEventListener('DOMContentLoaded', function () {
        var xml = loadXMLDoc("xml/city.xml"),
            selCity = document.querySelector('#city'),
            selStation = document.querySelector('#station2'),
            i;
        [].forEach.call(xml.querySelectorAll('city'), function (el) {
            selCity.add(new Option(el.getAttribute('name'), el.getAttribute('name')))
        })
        selCity.addEventListener('change', function () {
            selStation.options.length = 0 , i=0;
            [].forEach.call(xml.querySelectorAll('city[name=' + this.value + '] > station2'), function (el) {
                selStation.add(new Option(el.textContent, ++i));
            })
        })
    })
</script>
</head>
<body>
<?php
echo "
<div class=selectind><select id=city><option selected>Россия_1</option></select></div></td>
<td>
<div class=selectind>&nbsp;</div>
?>
</body></html>

Последний раз редактировалось leon2009sp, 10.03.2016 в 07:08. Причина: слишком длинный код
Ответить с цитированием
  #25 (permalink)  
Старый 08.03.2016, 15:57
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

leon2009sp,
и что на выходе должно получиться? Можно на словах, а можно и сверстать HTML.
Ответить с цитированием
  #26 (permalink)  
Старый 08.03.2016, 22:56
Аспирант
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 97

лучше на словах, а то еще километр кода
в inf0.tpl я выбираю город, значит в index.php в диве загружается inf3_*.tpl и город который выбрал, и в inf4.tpl ссылка должна меняться. пр: db/moscu/ac/index.php или db/novosib/ac/index.php
я думал если в javascript выбирать город и передавать его.
city=novosib;
city=moscu;
<marka name="AC" link="db/$city/ac/index.php">

не совсем, это чтобы понятней было: на самом деле так:
$xml = simplexml_load_file("xml/db.xml") or die("Error: Cannot create object");
echo "
<ul class=tops>";
foreach($xml->cat_a as $cat_a)
{
echo "<ol class=link1><font color=#ADADAB>{$cat_a['category']}</font></ol>";
foreach($cat_a->marka as $marka)
{
echo "<li align=left><a href={$marka['link']} class=link2>{$marka['name']}</a></li>";	
}
}
echo "</ul><ul class=tops>";
foreach($xml->cat_b as $cat_b)
{
echo "<ol class=link1><font color=#ADADAB>{$cat_b['category']}</font></ol>";
foreach($cat_b->marka as $marka)
{
echo "<li align=left><a href={$marka['link']} class=link2>{$marka['name']}</a></li>";	
}
}
echo "</ul><ul class=tops>";


значит в xml файле ссылка link=просто ac/index.php
а в коде
"<li align=left><a href={$city}/{$marka['link']} class=link2>{$city}/{$marka['name']}</a></li>";

$city выбирается через select в файле inf0.tpl (tpl - это чтобы не спутаться), но а так как все tpl файлы идут через include то они получаются одно целое.

Последний раз редактировалось leon2009sp, 08.03.2016 в 22:57. Причина: изменение чуток
Ответить с цитированием
  #27 (permalink)  
Старый 09.03.2016, 23:00
Аспирант
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 97

пример кода с вложением
теперь намного короче. так пойдет? (нашел вложение).
может кому интересно будет!
Вложения:
Тип файла: zip auto.zip (7.05 Мб, 0 просмотров)

Последний раз редактировалось leon2009sp, 10.03.2016 в 07:33. Причина: вложение и текст
Ответить с цитированием
  #28 (permalink)  
Старый 10.03.2016, 00:16
Аватар для Cuntmann
Аспирант
Отправить личное сообщение для Cuntmann Посмотреть профиль Найти все сообщения от Cuntmann
 
Регистрация: 26.01.2014
Сообщений: 78

Блин, что-то я невпопад ляпнул ) Как это удалить?
Ответить с цитированием
  #29 (permalink)  
Старый 10.03.2016, 15:31
Аспирант
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 97

чтобы два скрипта работали на одной странице правильно можно сделать так:
function loadXMLDoc(file_1) и function loadXMLDoc(file_2)
Ответить с цитированием
  #30 (permalink)  
Старый 13.03.2016, 06:24
Аспирант
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 97

это что перепробовал:
selCity.addEventListener('change', function () {
                selStation.options.length = 0 , i=0;
                [].forEach.call(xml.querySelectorAll('city[name=' + this.value + '] > station2'), function (el) {
                  //  selStation.add(new Option(el.textContent, ++i));
					//selStation.id += el.textContent;
					//selStation = div.getElementsByTagName(el.getAttribute('name'))
					//selStation.div.id = el.textContent;
					//input.value = el.textContent;		
					//$('#station2')=el.textContent;	
					//selStation.add($('#station2').el.textContent; )
					selStation.add += el.textContent
                })

но не выдает.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Читать xml файл без расширения modelka Серверные языки и технологии 2 19.03.2015 13:38
Чтение xml средствами JavaScript pers_tmb Общие вопросы Javascript 9 12.03.2014 18:26
Как загрузить xml из вышележащей директории без обращения к серверу? Parez Общие вопросы Javascript 11 06.05.2011 22:45
как правильно прочесть xml без подключения jQuery BorodinKO Общие вопросы Javascript 1 03.04.2011 23:23
Поиск и чтение атрибутов в XML Armen Общие вопросы Javascript 4 12.03.2011 22:20