Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.08.2014, 16:13
Интересующийся
Отправить личное сообщение для rslab Посмотреть профиль Найти все сообщения от rslab
 
Регистрация: 10.02.2014
Сообщений: 15

Получить часть ссылки
Здравствуйте. В JS слабо понимаю, но всё же.
Нужно найти на странице элемент:

Код:
<a id = "main" class = "nomodify" href = "/post*">
Где * - какое либо число.
Так вот, нужно получить это число, занести в переменную и выполнить ф-ю ajaxpost() с этой переменной.

Кто поможет?

UPD: вроде бы решил

var uid=parseInt(href.match(/\/post([0-9]+)$/));
ajaxpost(uid);


Но теперь встал вопрос - проверить, нашелся ли этот элемент.

Правильно ли будет это провести вот так?

if (uid == null){
// что то там далее
}

Последний раз редактировалось rslab, 21.08.2014 в 16:18. Причина: Дополнил
Ответить с цитированием
  #2 (permalink)  
Старый 21.08.2014, 16:23
Профессор
Отправить личное сообщение для WorM32 Посмотреть профиль Найти все сообщения от WorM32
 
Регистрация: 11.02.2014
Сообщений: 303

можно просто
// элемент найден
if (uid) {

}
Ответить с цитированием
  #3 (permalink)  
Старый 21.08.2014, 16:31
Интересующийся
Отправить личное сообщение для rslab Посмотреть профиль Найти все сообщения от rslab
 
Регистрация: 10.02.2014
Сообщений: 15

WorM32,
Спасибо.
Теперь по ходу дела еще один вопрос.
Аякс возвращает небольшую HTML страницу.
Её нужно поместить в div с именем main.
Погуглил, нашёл ф-ю в jquery:
Думаю попробовать сделать это вот так:

// аякс для наглядности
$.get(
  "/ajax.php",
  {
    uid: +uid+

  },
  onAjaxSuccess
);
 
function onAjaxSuccess(data)
{
 $(data).appendTo('.main');

}


Но вот чего то не обрабатывается.
Ответить с цитированием
  #4 (permalink)  
Старый 21.08.2014, 16:41
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

<!DOCTYPE html>
<html>
<head>
    <title>example</title>
</head>
<body>
	<div>
		<a href = "/post1">link 1</a><br>
		<a href = "/post2">link 2</a><br>
		<a href = "/post3">link 3</a><br>
		<a href = "/post">link 4</a><br>
		<a href = "/post5">link 5</a><br>
		<a href = "/post6">link 6</a><br>
	</div>
	<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
	<script>
	$('a').click(function()
		{
		var href = $(this).attr('href'),
			id = parseInt(href.substr(5));
		
		if (typeof id != 'number' || isNaN(id))
			return false;
			
		$.ajax(
			{
			url: "test.html",
			data:
				{
				id: id
				}
			}).done(function()
			{
			console.log('done!');
			});
		
		return false;
		});
	</script>
</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 21.08.2014, 16:45
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

Сообщение от rslab Посмотреть сообщение
Но вот чего то не обрабатывается.
выведи в консоль data:
console.log(data);

либо во вкладке network можно посмотреть что пришло с сервера
Ответить с цитированием
  #6 (permalink)  
Старый 21.08.2014, 16:52
Интересующийся
Отправить личное сообщение для rslab Посмотреть профиль Найти все сообщения от rslab
 
Регистрация: 10.02.2014
Сообщений: 15

skrudjmakdak,
при попытке обернуть Ваш код в функцию выдало - send is not defined
Ответить с цитированием
  #7 (permalink)  
Старый 21.08.2014, 16:56
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

можно узреть то что вы сделали?
Ответить с цитированием
  #8 (permalink)  
Старый 21.08.2014, 16:58
Интересующийся
Отправить личное сообщение для rslab Посмотреть профиль Найти все сообщения от rslab
 
Регистрация: 10.02.2014
Сообщений: 15

skrudjmakdak,
просто:
function send(){
// тут ваш код
}
Ответить с цитированием
  #9 (permalink)  
Старый 21.08.2014, 16:59
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

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

п.с. я отлучусь, смогу ответить чуть позже

Последний раз редактировалось skrudjmakdak, 21.08.2014 в 17:02.
Ответить с цитированием
  #10 (permalink)  
Старый 21.08.2014, 17:02
Интересующийся
Отправить личное сообщение для rslab Посмотреть профиль Найти все сообщения от rslab
 
Регистрация: 10.02.2014
Сообщений: 15

skrudjmakdak,
function send(){
	$('a').click(function()
		{
		var href = $(this).attr('href'),
			id = parseInt(href.substr(5));
		
		if (typeof id != 'number' || isNaN(id))
			return false;
			
		$.ajax(
			{
			url: "lords.php",
                        type:'get',
			data:
				{
				id: id
				}
			}).done(function()
			{
			console.log('done!');
			});
		
		return false;
		}});
}
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как получить часть url return url nanana Общие вопросы Javascript 22 20.04.2014 18:28
Как получить часть страницы загруженной через ajax Kostushko jQuery 7 04.11.2013 07:35
Возможно ли получить факт изменения ссылки во фрейме?? NickManager Библиотеки/Тулкиты/Фреймворки 4 18.09.2013 21:46
Как из ссылки на объект получить родительский объект FINoM Общие вопросы Javascript 3 03.03.2011 16:27
Как получить href ссылки по которой кликаешь? omen89 Элементы интерфейса 2 29.09.2010 11:40