Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Помогите вывести и посчитать значения ячеек в таблицах (https://javascript.ru/forum/events/18729-pomogite-vyvesti-i-poschitat-znacheniya-yacheek-v-tablicakh.html)

ksa 13.07.2011 16:50

Цитата:

Сообщение от uznik73
Нужно выбрать из трех таблиц только 2(или 3\4\5 если они есть) которые называются как "Уровень жизни"

Таки начинай читать другие ячейки... Проверяй их значения... Это и называется "писать программу". :D

uznik73 13.07.2011 17:49

Цитата:

Сообщение от ksa (Сообщение 113136)
Проверяй их значения... Это и называется "писать программу". :D

в javascript я не силен потому задаю глупые вопросы):-?
Дотумкать как проверять именно по значениям мне не удалось:D
в общем сделал так:
<!DOCTYPE html>
<html>
<head>
<title>test</title>
<style type="text/css">
</style>
<script type="text/javascript">
function Get() {
	var ot=document.getElementsByTagName('table')
	var i=2
	var s=1
	var val
	while (ot[i]) {
		if (ot[i].className!='if_ch') {
			i++
			continue
			
		}
		val=ot[i].rows[0].cells[1].innerHTML+ot[s].rows[0].cells[1].innerHTML
		alert(val)
		i++
	}
}
</script>

</head>
<body>
<table>
	<tbody>
		<tr>
			<td>
				<span>Test</span>
			</td>
			<td>1020</td>
		</tr>
	</tbody>
</table>
<table class="if_ch">
	<tbody>
		<tr>
			<td class="if_ch_name ">
				<span title="">Уровень жизни</span>
			</td>
				<td class="if_ch_val ">2.4</td>
		</tr>
	</tbody>
</table>
<table class="if_ch">
	<tbody>
		<tr>
			<td class="if_ch_name ">
				<span title="">tes</span>
			</td>
				<td class="if_ch_val ">12.4</td>
		</tr>
	</tbody>
</table>

<button onclick='Get()'>Get</button>
</body>
</html>

В общем если ставить так
val=ot[i].rows[0].cells[1].innerHTML*ot[s].rows[0].cells[1].innerHTML

то значения перемножаются, если "+" то складываются но не математическим действием а просто выводит оба значения..
В общем то нубский вопрос, сегодня пока гуглил на решение моей проблемы видел где то писали про знак плюс в javascript, не подскажете где можно про это почитать? А то что то сейчас уже не могу найти..:-?

ksa 14.07.2011 09:37

Цитата:

Сообщение от uznik73
в javascript я не силен

А в чём силён?

Цитата:

Сообщение от uznik73
если "+" то складываются но не математическим действием а просто выводит оба значения..

Как вариант...

var a='1'
var b='2'
alert(a+b)
a=+a
b=+b
alert(a+b)

uznik73 14.07.2011 13:09

Цитата:

Сообщение от ksa
А в чём силён?

Гугло поиске например) Шучу конечно..) Просто раньше мне вполне хватало банального html+css+copipast скриптов с гугла...
А сейчас вот приспичило сделать для себя такую вот фиговину и как оказалось гугл тут бессилен :lol:
Цитата:

Сообщение от ksa
Как вариант...

Спасибо, я сделал так
val=(+ot[i].rows[0].cells[1].innerHTML+ +ot[s].rows[0].cells[1].innerHTML)

всё складывает вроде как хорошо...
В общем такой поиск по странице решил пока отложить, все же что бы добиться нужного мне результата нужно прописывать много условий а т.к в них я совсем ничего не понимаю врятли что то получится (готовый скрипт за меня каждый раз никто писать не будет, будем изучать:) )
На данный момент решил для вывода нужных мне элементов использовать xpatch получился такой скрипт
function Get() {
var headings = document.evaluate("//span[text()='Броня']/../../td[2]", document, null, 
XPathResult.ANY_TYPE, null
); 
var thisHeading = headings.iterateNext();
var alertText = "Прочность доп. брони:\n"

while (thisHeading) {
alertText += thisHeading.textContent + "\n"
thisHeading = headings.iterateNext();
}
document.getElementById('result').innerHTML = alertText;
}

таким прекрасно находится любой нужный элемент, но одна проблема. для построения страницы я использую множество iframe, как в javasqript xpatch'у указать фрейм для поиска? в php нашел как а в javascript пока что то никак..


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