Как изменить текст на странице вставленный через

 
0
 
JavaScript
ava
Alx | 11.12.2003, 21:18
Итак: предположим имеется js-файл, расположенный на чужом сервере, который я не способен менять.
допустим это блок новостей. его содержание:

document.write ("<b>13.00</b> <a href="#" title="все новости за сегодня">11.12.2003</a> - <i>Пора обедать!</i>")


Он выведет:

13.00 11.12.2003 - Пора обедать!

А мне нужно только

13.00 - Пора обедать!

Т.е. мне нужно изменить текст, выводимый этим скриптом. Я думаю можно попробывать каким-то образом через индексОф и Cut вырезать тег <A>... очень нужно! кто-нить может помочь?
Ответы (11)
ava
Secandr | 12.12.2003, 08:34 #
У меня ничего умнее в голову не приходит кроме как получить этот скрипт при помощи своего *.php или *.pl оставить что надо и вставить в хтмл.
ava
Alx | 12.12.2003, 11:59 #
я, к сожалению не умеб пока ничего на ПХП делать, а на Перле тем более(
ava
[xoodo] | 12.12.2003, 20:04 #
Я, как обычно, с извратом.

1. Получаем новость.
2. Пишем ее в инпут. Можно?
3. Записываем значение инпута в переменную.
4. Извлекаем из переменной нужную подстроку(подстроки).
5. Пишем в инпут уже желаемые подстроки.

Если надо, придумаем код. smile
ava
Secandr | 12.12.2003, 23:50 #
А ещё можно сделать document.close и отрисовать его заново, можно iframe использовать, можно в лайер писать.
ava
[xoodo] | 13.12.2003, 02:07 #
Цитата (Secandr @ 12.12.2003, 23:50)
А ещё можно сделать document.close и отрисовать его заново, можно iframe использовать, можно в лайер писать.

А говорил, в голову ничего не приходит smile
ava
Alx | 14.12.2003, 16:38 #
такс... что-то я себя ламером почувствовал...( наверное мне ещё учиться и учиться... давайте код!)) ЭХ... обитна!(
ava
[xoodo] | 14.12.2003, 21:17 #
Я перемыслил свою мысль. Чтобы меньще извращаться, будем использовать не input, а textarea:
//рисуем текстареа:
<script type="text/javascript">
document.write("<textarea name=\"crap\">");
</script>

//включаем этот спам, который надо обработать:
<script type="text/javascript" src="http://www.microsoft.com/billy_boy.js"></script>

//закрываем текстареа:
<script type="text/javascript">
document.write("</textarea>");

//обрабатываем содержание; получаем текст из текстареа:
t=document.getElementByName().crap.value;

//сооружаем из подстрок нужный кусок:
t=t.substring(0,5)+t.substring(15,10);
//например, так; этот кусок запишет в t 5 символов, начиная с нулевого, и потом сразу 10 символов, начиная с 15-го; нумерация символов с нуля - это важно; сколько там символов и откуда - решай сам;

//теперь рисуем в текстареа новое значение:
document.getElementByName().crap.value=t;
</script>


Вроде все. Потом у текстареа можно границы убрать и задний фон поменять, но это уже к ХТМЛовским ребятам. Если нужно в полученном сообщении олпределенные теги искать, а не фиксированные позиции, то тоже придумаем что-нибудь smile
ava
guest | 15.12.2003, 18:04 #
можно дом модель поюзать
и узнать каким номером этот а идет и childNode этот заменить
ava
Alx | 15.12.2003, 19:45 #
такс..., [xoodo], спасибо большое, но если бы всё было так просто, я б не спрашивал!)) дело в том, что длина всех трёх полей всё время разная, т.е. сегодня там 5 символов, а завтра уже деять! Поэтому то я и говорю, что нужно как-то вычестьот тудова тег <a>, иначе думаю не получится!
ava
[xoodo] | 15.12.2003, 23:41 #

for(i=0;i<t.length;i++)
{
   if(t.substring(i, 3)=="<a>")
   {
       bp1=i;
   }
   if(t.substring(i, 4)=="</a>")
   {
       bp2=i;
   }
}
t=t.substring(0, bp1)+t.substring(bp2, t.length);


Итак, в полученной строке ищем подстроку "<a>", найдя, записываем ее начальную позицию. Потом ищем конечный тэг, записываем его положение. И рисуем строку до <a> и после </a>. Т.е. все, кроме ссылки. Это очевидно можно сделать короче, но тем не менее...

Попал наконец-то или опять нет? smile
ava
Alx | 15.12.2003, 23:58 #
попал, спасибки!)) только я теперь тебе скажу, как покороче!)


function redscript
{var urls = document.links.length;
for (var i=1; i<=urls; i++)
{if (document.links[i].href == "url_path")
document.links[i].style.display = none;
}
}


вот, а то я уж совсем расстроился, что никак не мог это сварганить!)
Зарегистрируйтесь или войдите, чтобы написать.
Фирма дня
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Участники
  guest   [xoodo]   Secandr   Alx
advanced
Отправить