Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Парсинг исходного кода страницы. (https://javascript.ru/forum/misc/44993-parsing-iskhodnogo-koda-stranicy.html)

rslab 10.02.2014 09:10

Парсинг исходного кода страницы.
 
В общем, особо в JS не шарю, поэтому и пришёл к Вам за помощью.
Стоит задача - юзерскрипт должен получать значение из исходного кода страницы и передавать его на PHP скрипт для дальнейшей обработки.
Перерыв тонну литературы так и ничего не понял, наверное, я через чур туповат.
Натолкните, пожалуйста, в нужную сторону. :(

ksa 10.02.2014 09:33

Цитата:

Сообщение от rslab
Натолкните, пожалуйста, в нужную сторону.

Не совсем понятно про какую "сторону" ты пишешь...

Цитата:

Сообщение от rslab
получать значение из исходного кода страницы

Какого именно? Какие там элементы?

Цитата:

Сообщение от rslab
и передавать его на PHP скрипт

Отправляй форму... Или ajax-запрос...

rslab, для прояснения неких ситуаций их нужно смоделировать в тестовых примерах. ;)
На них можно будет показать примеры решений...

rslab 10.02.2014 09:41

Есть несколько одинаковых элементов на странице, к примеру:
<a class="author" href="/admin author_id="1">Автор: Admin</a>

Нужно парсить до author_id="1", точнее - до значения номера, в этом случае - единицы.
С отправкой никаких проблем нет.

danik.js 10.02.2014 09:47

Чет я нифига не понял. У тебя там с кавычками муть. Че блин значит "парсить"? Это широкое понятие. Поясни русским языком.

rslab 10.02.2014 09:49

Цитата:

Сообщение от danik.js (Сообщение 296861)
Чет я нифига не понял. У тебя там с кавычками муть. Че блин значит "парсить"? Это широкое понятие. Поясни русским языком.

Комментом выше объяснение.
Получить из дива значение.

ksa 10.02.2014 09:49

Цитата:

Сообщение от rslab (Сообщение 296860)
Есть несколько одинаковых элементов на странице, к примеру:
<a class="author" href="/admin author_id="1">Автор: Admin</a>

Нужно парсить до author_id="1", точнее - до значения номера, в этом случае - единицы.

Вот это уже не понятно...
Что именно ты хочешь получить из этого ХТМЛя?
Часть значения атрибута href?

rslab 10.02.2014 09:51

Цитата:

Сообщение от ksa (Сообщение 296863)
Вот это уже не понятно...
Что именно ты хочешь получить из этого ХТМЛя?
Часть значения атрибута href?

да, а именно значение author_id, т.е. из примера выйдет единица.

danik.js 10.02.2014 10:06

var elements = document.querySelectorAll('[author_id]');
var identifiers = Array.prototype.map.call(elements, function(element) {
    return element.getAttribute('author_id');
});
alert(identifiers);

rslab 10.02.2014 10:06

Всё, справился, всем спасибо.
getUserInfo:function(href){
		if(!href) href=hint.a.getAttribute('href');
		if(hint.list[href]){
			setContent(hint.list[href]);
			hint.checkDocHeight();
			return false;
		}
		if(href.match(/\/author_id([0-9]+)$/)){
			var uid=parseInt(href.match(/\/id([0-9]+)$/)[1]);
			if(uid) getUserInfo(false,uid,href);

ksa 10.02.2014 10:08

Цитата:

Сообщение от rslab
значение author_id

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

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
$(function (){
	$('.author').each(function (){
		var val=this.href;
		alert(val.split(/author_id=/)[1]);
	});
});
</script>
</head>
<body>
<a class="author" href="/admin author_id=1">Автор: Admin</a>
</body>
</html>


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