2013-03-14 2 views
-3

Мне нужно изменить одну строку на странице 1 (mysite.com/page1.html), если страница2 (mysite.com/page2.html) содержит указанный div.Изменить div id на странице1, если страница2 содержит элемент

if (document.getElementById("div_id")) { 
var str = document.getElementById("div_id").innerHTML; 
var n = str.replace("Login", "Logout"); 
document.getElementById("div_id").innerHTML = n; 
} 

Это работает только на той же странице, но как получить элемент с другой страницы? Я предпочитаю не использовать iframe.

+0

что нужно для u – PSR

+0

Мне нужно изменить «Войти» в «Выйти» на странице1, если записи зарегистрированы на странице2. Если они заходят на страницу2, появляется новый div. – marius

ответ

0

Попробуйте открыть 2-ю страницу в iframe размером 1x1 пикселя изнутри страницы # 1. Когда событие onload для iframe запускается, страница заканчивается загрузкой, а затем вы можете получить документ в iframe и проверить, есть ли указанный div или нет.

Редактировать: Я полностью согласен с @ aram90 и считаю, что это очень плохой способ программирования веб-сайтов. Вы должны пересмотреть свои варианты, скорее всего, есть намного лучшая альтернатива.

+0

Каким будет воздействие? Я новичок, я вряд ли получаю помощь по своим вопросам, сейчас один вопрос = -4. Как я буду делать все правильно, если я придерживаюсь 2-4 дня для одной маленькой проблемы, такой как этот. – marius

+0

В основном это то, что вам потребуется в 10 раз больше времени для разработки простых задач таким образом, у него будет пользователь (более медленная загрузка), и при небольших изменениях он разрывается на несколько десятков раз. Какие бэкэнд-технологии вы используете? PHP? Rails? Django? Я предлагаю вам задать новый вопрос о том, чтобы сделать кнопку входа в систему/выхода из системы с помощью соответствующих технологий backend. – Iftah

3

Вместо использования простого html вам нужно использовать какой-то серверный язык сценариев. Когда существуют такие логические зависимости между разными страницами, это означает, что вам нужно использовать нечто большее, чем просто статические страницы. Это можно сделать без серверных сценариев с помощью JS/Ajax, но это не обычный способ сделать это.

0

попытайтесь поместить некоторую переменную в сеанс. В зависимости от значения этого можно скрыть/показать div.

Смежные вопросы