При нажатии на ник он появляется в форме ответа
'<p><em>('+ objChat.chats[i].date +')</em> <span class="chatusr">'+ objChat.chats[i].user +' </span> : '+bbcodeParser.bbcodeToHtml(objChat.chats[i].chat)+' </p>';
objChat.chats[i].user- это ник Как сделать так, что при нажатии на него он появлялся в форме ввода сообщения? |
frolgp,
вы используете ООП и не знаете как написать функцию простую функцию... Я вам помогу... Выбираете все элементы с классом chatusr, используя document.querySelectorAll, далее перебираете все элементы циклом и в цикле вешаете на каждый элемент событие ... А в обработчике в переменную userName получаете имя юзера как this.innerHTML. Теперь нужно вставить полученную строку в текст сообщения, то есть вот так form.innerHTML += userName; где form это Id формы ввода сообщений |
Я в JS новичок, я, практически, ничего не понял, что вынаписали
|
frolgp,
так может быть стоит почитать https://learn.javascript.ru |
DynkanMaclaud,
слишком долго разбираться, а мне нужно срочно |
Цитата:
|
MrGrVV,
нет, не нашел |
<input type="text">
<script>
// GENERATE USERS
for(var i = 0; i < 5; i++) {
var user = document.createElement('p');
user.classList.add('user');
user.innerHTML = Math.random().toString(36).substring(2);
document.body.appendChild(user);
}
var input = document.querySelector('input');
[].forEach.call(document.querySelectorAll('.user'), function(user) {
user.onclick = function() {
input.value = this.innerHTML;
}
});
</script>
|
Lemme,
<script>
// GENERATE USERS
for(var i = 0; i < 5; i++) {
var user = document.createElement('p');
user.classList.add('user');
user.innerHTML = Math.random().toString(36).substring(2);
document.body.appendChild(user);
}
var input = document.querySelector('input');
[].forEach.call(document.querySelectorAll('.user'), function(user) {
user.onclick = function() {
input.value += this.innerHTML; // *************
}
});
</script>
Думаю что лучше добавлять в инпут а то так текст написал нажал на пользователя и нету текста) |
| Часовой пояс GMT +3, время: 12:08. |