Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Как внести в переменную текст (https://javascript.ru/forum/css-html/16950-kak-vnesti-v-peremennuyu-tekst.html)

Joshka 29.04.2011 19:37

Как внести в переменную текст
 
Здравствуйте, я в js слаб, по этому уже второй день моя борьба с компом продолжается, я пытаюсь написать такой код, есть две ссылки или кнопки на верху страницы, при нажатии на кнопку один выводится один текст, при нажатии на вторую другой (все выводится во одно и тоже место через div), проблема в том что мне надо при нажатии выводить текст со ссылками, и я не как не могу засунуть это все в одну переменную, что делать? я слышал есть другие решения этого, если кто знает подскажите

Aetae 29.04.2011 20:21

<a href="#" onclick="div.innerHTML=a">a</a> | <a href="#" onclick="div.innerHTML=b">b</a>
<div id="text"></div>
<script>
a='Я: <a href="http://ya.ru">ya</a>';
b='Он: <a href="http://on.ru">on</a>';
div=document.getElementById('text');
</script>

Joshka 29.04.2011 20:23

Такое у меня уже есть.. У меня проблема в том что текст формеруется php кодом и может иметь вид:
Строка 1: Ссылка
Строка 2: Ссылка
Строка 3: Ссылка
Такое в переменную не засунешь...

Aetae 29.04.2011 20:44

php генерирует html
Если вывод php не содержит переносов, то нет никакой проблемы в том, чтобы сделать так:
a='<?php echo $link1 ?>'


Если переводы строки есть то правильно править php сторону, а не извращаться с js.

Но если очень хочется, то можно вывести результат в скрытый конетйнер, а оттуда зафигачить куда надо.

<div id="old_text" style="display:none">
Я: <a href="http://ya.ru">ya</a>
Он: <a href="http://on.ru">on</a>
</div>

<a href="#" onclick="div.innerHTML=link[1]">a</a> | <a href="#" onclick="div.innerHTML=link[2]">b</a>
<div id="text"></div>
<script>
div=document.getElementById('text');
link=document.getElementById('old_text').innerHTML.split('\n');
</script>

Joshka 29.04.2011 20:51

спс

Joshka 29.04.2011 20:55

Я записываю в div текст, а он мне из переменной выводит null

Aetae 29.04.2011 21:18

Значит вы используете document.getElementById() до того как текст собсно появляется в документе. У меня, заметьте, script идёт после всего.

Aetae 29.04.2011 21:26

<script>alert(
document.getElementById('inp')
)</script>

<input id="inp">

<script>alert(
document.getElementById('inp')
)</script>

Joshka 29.04.2011 22:05

Что то не получается, он мне впесто текста выдает [object HTMLDivElement]

Joshka 29.04.2011 22:08

Все понял, я забыл .innerHTML.split('\n');
Спасибо большое...


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