Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Заполнение textarea формы (https://javascript.ru/forum/misc/12161-zapolnenie-textarea-formy.html)

PRosTo_LEva 04.10.2010 11:41

Заполнение textarea формы
 
Есть небольшой движок чата который устраивает практически всем кроме одного момента, нет возможности которая бы позволила кликом по нику пользователя отправить его ник в поле написания сообщения... ну как бы для того чтобы было понятно кому отвечаешь..

опыта программирования на яве нет... но некоторые сведения узнать удалось:

ник надо взять в тег <a href="#" onclick="">ник</a> и в onclick выполнить яву.. поле в которое должно попадать сообщение

<textarea class="message_box" style="height:50px;" autocomplete="off" style="overflow:hidden;" onKeyPress="return submitenter(this,event);" id="txt_message" name="txt_message" maxlength="250" onkeyup="return getmaxlength(this);"></textarea>



поделитесь идеями по реализации данной задачи, за ранее благодарен!

Skipp 04.10.2010 12:12

Цитата:

яву
:nono: не называйте больше так, пожалуйста.

<textarea class="message_box" style="height:50px;" autocomplete="off" style="overflow:hidden;" onKeyPress="return submitenter(this,event);" id="txt_message" name="txt_message" maxlength="250" onkeyup="return getmaxlength(this);"></textarea> <!-- textarea не изменял -->
    <a href="javascript:void(0)" onclick="document.getElementById('txt_message').value = this.innerHTML + ': '">ник</a>

PRosTo_LEva 04.10.2010 19:42

Убил весь день.. всё что удалось выяснить последний этап перед выводом сообщений выглядит так:
$xml .= '<message id="' . $i['message_id'] . '">';
        $xml .= '<ring_bell>' . htmlspecialchars($ring_bell) . '</ring_bell>';
        $xml .= '<avatar_img>' . htmlspecialchars($i['avatar']) . '</avatar_img>';
        $xml .= '<user>' . htmlspecialchars($i['user_name']) . '</user>';
        $xml .= '<text>' . htmlspecialchars($i['message']) . '</text>';
        $xml .= '<bcast>' . htmlspecialchars($broadcast) . '</bcast>';
        $xml .= '<time>null</time>';
        $xml .= '<webcam>' . $webcam . '</webcam>';
        $xml .= '<lastID>' . $_SESSION['total_messages'] . '</lastID>';
        $xml .= '<isSil>' . $SILENT . '</isSil>';
        $xml .= '</message>';
    
    }

    $xml .= '</root>';
    echo $xml;



при попытке подстановки вместо $i['user_name'] строки содержания
<a href="javascript:void(0)" onclick="document.getElementById('txt_message').value = 'nik'">nik</a>


скрипт полностью не функционирует.. если оставляю поле onclick пустым то возле каждого сообщения появляется ссылка.. но естественно не работает.. htmlspecialchars убирал.

HelpeR 04.10.2010 22:31

PRosTo_LEva, т.е. вы хотите
$xml .= '<user>'  . htmlspecialchars($i['user_name']) . '</user>';
заменить на
$xml .= '<user>'  . <a href="javascript:void(0)" onclick="document.getElementById('txt_message').value = 'nik'">nik</a>. '</user>';
????

PRosTo_LEva 04.10.2010 23:16

Я пытаюсь достичь задачи которая описана в первом посте, но опыта нет.. прошу совета как это реализовать правильно.

HelpeR 04.10.2010 23:22

вынесите эту строку в отельную функцию
<a href="javascript:void(0)" onclick="appendName('nik');">nik</a>

а саму функцию где нибудь пропешите
function appendName(name) {
    document.getElementById('txt_message').value += ' ' + name;
}

PRosTo_LEva 05.10.2010 00:23

ситуация повторяется и при этих условиях

HelpeR 05.10.2010 18:52

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


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