Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.05.2010, 23:07
Новичок на форуме
Отправить личное сообщение для morethandoodle Посмотреть профиль Найти все сообщения от morethandoodle
 
Регистрация: 10.05.2010
Сообщений: 4

Значение атрибута в недействительной верстке
Уважаемые форумчане, требуется ваша помощь!

В качестве исходных данных имеем недействительную разметку (генерится движком):

<a href="<img src='/engine/pics/news/pic1_22.jpg' align=left>" rel="lightbox">есть</a>


Нужно:

<a href="/engine/pics/news/pic1_22.jpg" rel="lightbox">есть</a>


Пробовал:

$('a[rel=lightbox]').each(function(n){
		this.href = this.attr("href").attr("src");
	});


Получил:

<a href="%3Cimg%20src=%27/engine/pics/news/pic1_22.jpg%27%20align=left%3E" rel="lightbox">есть</a>


Таких элементов много. Что делать, как быть?

Последний раз редактировалось morethandoodle, 10.05.2010 в 23:21.
Ответить с цитированием
  #2 (permalink)  
Старый 10.05.2010, 23:11
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от morethandoodle
this.href = this.attr("href").attr("src");
Даже удивительно, как такое может работать.
$('a[rel=lightbox]').each(function(n){ 
        this.href = $(this.href).attr("src"); 
    });
Ответить с цитированием
  #3 (permalink)  
Старый 10.05.2010, 23:19
Новичок на форуме
Отправить личное сообщение для morethandoodle Посмотреть профиль Найти все сообщения от morethandoodle
 
Регистрация: 10.05.2010
Сообщений: 4

B@rmaley.e><e, и чем только я не пробовал! Твой вариант дает пустой href="".
Ответить с цитированием
  #4 (permalink)  
Старый 10.05.2010, 23:23
Новичок на форуме
Отправить личное сообщение для morethandoodle Посмотреть профиль Найти все сообщения от morethandoodle
 
Регистрация: 10.05.2010
Сообщений: 4

Откуда вообще берутся эти %3C, %20, %27 и %3E? Как обойтись без них? Чувствую .attr("src"); не срабатывает именно по этой причине...
Ответить с цитированием
  #5 (permalink)  
Старый 10.05.2010, 23:33
Новичок на форуме
Отправить личное сообщение для morethandoodle Посмотреть профиль Найти все сообщения от morethandoodle
 
Регистрация: 10.05.2010
Сообщений: 4

Перефразирую - я бы с радостью и большим удовольствием отрезал <img src=' и ' align=left> у этого href, и оставил бы только /engine/pics/news/pic1_22.jpg

Пусть это будет даже %3Cimg%20src=%27/engine/pics/news/pic1_22.jpg%27%20align=left%3E - в этом случае отрезал %3Cimg%20src=%27 и %27%20align=left%3E.
Ответить с цитированием
  #6 (permalink)  
Старый 11.05.2010, 04:36
Аватар для sysya
Профессор
Отправить личное сообщение для sysya Посмотреть профиль Найти все сообщения от sysya
 
Регистрация: 27.12.2009
Сообщений: 292

Вы что, всё наугад делаете? Код неправильный
$('a[rel=lightbox]').each(function(n){
this.href = this.attr("href").attr("src");
});

Вот так попробуйте:

$('a[rel=lightbox]').each(function(n){
$(this).attr('href', $(тут элемент из которого надо достать src).attr("src"));
});

На счёт движка не понятно, что за движок?
__________________
Нет предела совершенству...

Последний раз редактировалось sysya, 11.05.2010 в 04:40.
Ответить с цитированием
  #7 (permalink)  
Старый 11.05.2010, 08:45
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,566

sysya
+10

Вот чуть переделал вариант от B@rmaley.e><e :
$('a[rel=lightbox]').each(function(n){
        this.href = $($(this).attr('href')).attr("src");
    });
Ответить с цитированием
  #8 (permalink)  
Старый 11.05.2010, 13:28
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

$('a[rel=lightbox]').each(function(n){
    this.href = this.href.split("'")[1];
});
Ответить с цитированием
  #9 (permalink)  
Старый 11.05.2010, 15:22
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,566

exec, хоть бы проверял иногда свои советы. Потому что так не верно.
Ответить с цитированием
  #10 (permalink)  
Старый 11.05.2010, 18:04
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

micscr, это почему ещё?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в IE динамически установить значение события onClick? Гость Элементы интерфейса 6 16.01.2011 23:46
как передовать и парсить значение переменной по URL? FATALITY Общие вопросы Javascript 10 25.03.2010 19:32
Если введеное значение меньше то Tchort Общие вопросы Javascript 12 23.03.2010 11:25
Как получить значение аттрибута вложенного тэга по id losk Events/DOM/Window 4 21.11.2009 10:08
Кроссброузерно определить значение атрибута faunder Общие вопросы Javascript 5 21.02.2009 22:08