Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 09.01.2016, 03:04
Интересующийся
Отправить личное сообщение для LungDesire Посмотреть профиль Найти все сообщения от LungDesire
 
Регистрация: 18.08.2015
Сообщений: 18

Подскажите пожалуйста, а не реально ли каждое из значений расположить в соответствующей переменной или элементе массива, что бы потом можно было их выводить на страницу в разном порядке?
Ответить с цитированием
  #12 (permalink)  
Старый 09.01.2016, 11:44
Профессор
Отправить личное сообщение для Keramet Посмотреть профиль Найти все сообщения от Keramet
 
Регистрация: 30.12.2015
Сообщений: 194

Сообщение от LungDesire Посмотреть сообщение
Подскажите пожалуйста, а не реально ли каждое из значений расположить в соответствующей переменной или элементе массива, что бы потом можно было их выводить на страницу в разном порядке?
так values - это ж и есть массив (values[0], ... values[i], ...values[values.length]).
Ответить с цитированием
  #13 (permalink)  
Старый 11.01.2016, 06:25
Интересующийся
Отправить личное сообщение для LungDesire Посмотреть профиль Найти все сообщения от LungDesire
 
Регистрация: 18.08.2015
Сообщений: 18

Посмотрите пожалуйста код ниже. До 7-го элемента массива выборка правильная. А вот в 7-ой элемент попадает слишком много пунктов. Не удивительно, ведь всё просеивается через тег TD. По сути, из 7-го элемента необходимо получить цифру "5"(это количество объявлений), "2"(это количество различных машин и общую информацию об авто:
13.12.2015
16:18
http://auto.ru/cars/used/sale/1026661045-11f31b/
Audi A6 IV (C7),
2012,
31900 км,
1 380 000
-7
(auto.ru)

В варианте ниже просто теряются url адреса. По Вашему мнению, этого реально добиться?
Код:
<html lang="ru">
<head>
<meta charset="UTF-8"/>
<title>IiT</title>
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script>
$(function() {
var values = [], // массив искомых значений
txt;
$("td").each(function(n) {
txt = this.innerText;
values.push( txt.substring(txt.indexOf(':')+1).trim() );
});
document.write('1: ' + values[0]+' - OK<br><br>');
document.write('2: ' + values[1]+' - OK<br><br>');
document.write('3: ' + values[2]+' - OK<br><br>');
document.write('4: ' + values[3]+' - OK<br><br>');
document.write('5: ' + values[4]+' - OK<br><br>');
document.write('6: ' + values[5]+' - OK<br><br>');
document.write('7: ' + values[6]);
});
</script>
</head>

<body>
<span id="exists"></span><table class=sale-info cellspacing=4 width=100%
style="text-align: left; font-size:10pt; border:none; font-weight: normal; font-family: Tahoma;"><tr style="border:none"><td style="text-align:
left; border:none">Дата и время выхода: <strong>13.12.2015 16:18</strong></td></tr><tr style="border:none">
<td style="text-align: left; border:none">Город: <strong>Москва</strong></td></tr><tr style="border:none"><td style="text-align:
left; border:none">Телефон продавца: <a style="font-size: 14pt;" target=_blank href="http://avtomir.ru/a.aspx?control=20&offerid=119384272">
79263660***</a></td></tr></tr><tr style="border:none"><td style="text-align: left; border:none">Сотовый оператор: г. Москва и Московская
область</td></tr><tr style="border:none"><td style="text-align: left; border:none">Цена: <strong>1 380 000 руб.</strong>
</td></tr><tr style="border:none"><td style="text-align: left; border:none">Рассчетное отклонение: <strong>
<span tooltip="16" style="color: #009900;">-7 250 руб.</span></strong></td></tr><tr style="border:none"><td style="text-align: left;
border:none"><br />Количество объявлений: <strong style="color: red;font-size: 10pt;" >5</strong><br />
Количество различных машин: <strong style="color: red;font-size: 10pt;" >2</strong><br /><br />Марки машин:<br/><img align="left"
style="margin-right: 5px;" height="40" src="http://avtomir.ru/i/mark/AUDI.png"/><br clear="all"/><br/>Последние 15 объявлений:<br>
<b style="font-weight: bold;">13.12.2015 16:18: <a target=_blank href="http://auto.ru/cars/used/sale/1026661045-11f31b/">
Audi A6 IV (C7), 2012</a>, 31900 км, 1 380 000 <sup tooltip="16" style="color: #009900;"><small>-7</small></sup> (auto.ru)<br></b>
13.12.2015 16:09: <a target=_blank href="https://www.avito.ru/moskva/avtomobili/audi_a6_2012_696388594">Audi A6, 2012</a>,
35000 км, 1 380 000 <sup tooltip="16" style="color: #009900;"><small>-7</small></sup> (avito.ru)<br>16.05.2013 23:35:
<a target=_blank href="http://www.avito.ru/moskva/avtomobili_s_probegom/audi_q5_2008_168658149">Audi Q5, 2008</a>, 50000 км,
1 430 000 <sup tooltip="68" style="color: red;"><small>+369</small></sup> (avito.ru)<br>16.05.2013 23:27: <a target=_blank
href="http://cars.auto.ru/cars/used/sale/45400842-51ad2.html">Audi Q5, 2008</a>, 46000 км, 1 430 000 <sup tooltip=""
style="color: #009900;"><small></small></sup> (auto.ru)<br>28.04.2013 22:07: <a target=_blank
href="http://www.avito.ru/moskva/avtomobili_s_probegom/audi_q5_2008_162521001">Audi Q5, 2008</a>, 50000 км, 1 450 000
<sup tooltip="68" style="color: red;"><small>+389</small></sup> (avito.ru)<br></td></tr><tr style="border:none">
<td style="text-align: left; border:none"><br><strong>Данные:</strong><br/>отсутствуют</td></tr></table>
</body>
</html>

Последний раз редактировалось LungDesire, 11.01.2016 в 07:48.
Ответить с цитированием
  #14 (permalink)  
Старый 11.01.2016, 15:50
Профессор
Отправить личное сообщение для Keramet Посмотреть профиль Найти все сообщения от Keramet
 
Регистрация: 30.12.2015
Сообщений: 194

Ну только "в лоб" у меня получается, "а-ля" говнокод:
<html lang="ru">
<head>
<meta charset="UTF-8"/>
<title>IiT</title>
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script>
$(function() {
			var values = [],
				longVal,	//	содержание 7-го элемента
				txt;
			$("td").each(function(n) {
				if (n < 6) {
					txt = this.innerText;
					values.push( txt.substring(txt.indexOf(':')+1).trim() );
				} else if (n == 6) longVal = this;

			});
			values.push( longVal.childNodes[2].textContent );
			values.push( longVal.childNodes[5].textContent );
			values.push( longVal.childNodes[16].textContent );
			alert(values);	
		});
</script>
</head>

<body>
<span id="exists"></span><table class=sale-info cellspacing=4 width=100%
style="text-align: left; font-size:10pt; border:none; font-weight: normal; font-family: Tahoma;"><tr style="border:none"><td style="text-align:
left; border:none">Дата и время выхода: <strong>13.12.2015 16:18</strong></td></tr><tr style="border:none">
<td style="text-align: left; border:none">Город: <strong>Москва</strong></td></tr><tr style="border:none"><td style="text-align:
left; border:none">Телефон продавца: <a style="font-size: 14pt;" target=_blank href="http://avtomir.ru/a.aspx?control=20&offerid=119384272">
79263660***</a></td></tr></tr><tr style="border:none"><td style="text-align: left; border:none">Сотовый оператор: г. Москва и Московская 
область</td></tr><tr style="border:none"><td style="text-align: left; border:none">Цена: <strong>1 380 000 руб.</strong>
</td></tr><tr style="border:none"><td style="text-align: left; border:none">Рассчетное отклонение: <strong>
<span tooltip="16" style="color: #009900;">-7 250 руб.</span></strong></td></tr><tr style="border:none"><td style="text-align: left;
border:none"><br />Количество объявлений: <strong style="color: red;font-size: 10pt;" >5</strong><br />
Количество различных машин: <strong style="color: red;font-size: 10pt;" >2</strong><br /><br />Марки машин:<br/><img align="left"
style="margin-right: 5px;" height="40" src="http://avtomir.ru/i/mark/AUDI.png"/><br clear="all"/><br/>Последние 15 объявлений:<br>
<b style="font-weight: bold;">13.12.2015 16:18: <a target=_blank href="http://auto.ru/cars/used/sale/1026661045-11f31b/">
Audi A6 IV (C7), 2012</a>, 31900 км, 1 380 000 <sup tooltip="16" style="color: #009900;"><small>-7</small></sup> (auto.ru)<br></b>
13.12.2015 16:09: <a target=_blank href="https://www.avito.ru/moskva/avtomobili/audi_a6_2012_696388594">Audi A6, 2012</a>, 
35000 км, 1 380 000 <sup tooltip="16" style="color: #009900;"><small>-7</small></sup> (avito.ru)<br>16.05.2013 23:35: 
<a target=_blank href="http://www.avito.ru/moskva/avtomobili_s_probegom/audi_q5_2008_168658149">Audi Q5, 2008</a>, 50000 км, 
1 430 000 <sup tooltip="68" style="color: red;"><small>+369</small></sup> (avito.ru)<br>16.05.2013 23:27: <a target=_blank 
href="http://cars.auto.ru/cars/used/sale/45400842-51ad2.html">Audi Q5, 2008</a>, 46000 км, 1 430 000 <sup tooltip="" 
style="color: #009900;"><small></small></sup> (auto.ru)<br>28.04.2013 22:07: <a target=_blank 
href="http://www.avito.ru/moskva/avtomobili_s_probegom/audi_q5_2008_162521001">Audi Q5, 2008</a>, 50000 км, 1 450 000 
<sup tooltip="68" style="color: red;"><small>+389</small></sup> (avito.ru)<br></td></tr><tr style="border:none">
<td style="text-align: left; border:none"><br><strong>Данные:</strong><br/>отсутствуют</td></tr></table>
</body>
</html>
Ответить с цитированием
  #15 (permalink)  
Старый 11.01.2016, 17:59
Интересующийся
Отправить личное сообщение для LungDesire Посмотреть профиль Найти все сообщения от LungDesire
 
Регистрация: 18.08.2015
Сообщений: 18

Последний раз Вас тревожу: А как вывести информацию о остальных авто, а не только о первом:
Вроде:
13.12.2015 16:18: Audi A6 IV (C7), 2012, 31900 км, 1 380 000 -7 (auto.ru)
13.12.2015 16:09: Audi A6, 2012, 35000 км, 1 380 000 -7 (avito.ru)
16.05.2013 23:35: Audi Q5, 2008, 50000 км, 1 430 000 +369 (avito.ru)
16.05.2013 23:27: Audi Q5, 2008, 46000 км, 1 430 000 (auto.ru)
28.04.2013 22:07: Audi Q5, 2008, 50000 км, 1 450 000 +389 (avito.ru)
Ответить с цитированием
  #16 (permalink)  
Старый 11.01.2016, 18:55
Профессор
Отправить личное сообщение для Keramet Посмотреть профиль Найти все сообщения от Keramet
 
Регистрация: 30.12.2015
Сообщений: 194

Очередная порция говнокода:
$(function() {
			var values = [],
				longVal,	//	содержание 7-го элемента
				txt;
			$("td").each(function(n) {
				if (n < 6) {
					txt = this.innerText;
					values.push( txt.substring(txt.indexOf(':')+1).trim() );
				} else if (n == 6) longVal = this;

			});
			values.push( longVal.childNodes[2].textContent );
			values.push( longVal.childNodes[5].textContent );
			values.push( longVal.childNodes[16].textContent );
			for (var i = 17, N = longVal.childNodes.length; i < N; i++)	{
				if (longVal.childNodes[i].nodeName == "#text")  values.push( longVal.childNodes[i].nodeValue );
				if (longVal.childNodes[i].nodeName == "A") values.push( longVal.childNodes[i].innerText );
			}
		//	console.log(longVal.childNodes);
			alert(values);
			
		});
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Регулярные выражения zoinx2010 Общие вопросы Javascript 4 07.02.2014 16:37
регулярные выражения remember_me Общие вопросы Javascript 2 26.12.2013 14:56
Составить регулярные выражения ($) Zero Tolerance Общие вопросы Javascript 10 19.11.2013 13:14
Регулярные выражения для javascript qwert_ukg Общие вопросы Javascript 3 20.04.2012 13:45
Функции поиска и замены строк или регулярные выражения? Armen Общие вопросы Javascript 1 01.01.2010 12:35