ํฐ์คํ ๋ฆฌ ๋ทฐ
textarea์์ ์ํฐํค ๋๋ ์ ๋ ์ด๋ฒคํธ ๋์ํ๊ธฐ
๋๋์ด๋ฐ๐พ 2018. 7. 11. 13:36์ฑ๋ดํ์์ ์ด์คํ๊ฒ ๋ฐ๋ผํ ๊ฒ์ธ๋ฐ ๋ณดํต ์ฑํ ํ ๋ ๋ฒํผ์ด ์์ด๋ ์ํฐํค๋ฅผ ๋๋ฌ์ ์ ์ก์ํค๋ ๋์์ด ์ผ๋ฐ์ ์ด๋ค.
๋ฌผ๋ก ์ค๋ฐ๊ฟ์ด ๋ฐ๋์ ํ์ํ ๊ฒฝ์ฐ์๋ ๋ง์ง ์๊ฒ ์ง๋ง ๊ทธ ๊ฒฝ์ฐ๋ฅผ ๋นผ๊ณ ์๊ฐํ์๋ค.
1 2 3 4 5 | textarea#chatBot(class='form-control' style='resize:none; width:340px; height:300px;' name='chatBot' readonly='readonly') bot : ์๋
๋ด๊ฐ ๋์์ค๊ฒ! p textarea#chatUser(class='form-control' style='resize:none; width:340px; height:50;' name='chatUser') p input#chatPost(type='button' value='๋ณด๋ด๊ธฐ' class='chatsend') | cs |
(textarea์ class ๋ถ๋ถ์ ๊ผญ ์จ์ฃผ์ง ์์๋ ๋๋ค. css์ ์ธ ์์๋ฅผ ์ฝ๊ฐ ๋ฃ์ ๊ฒ์ด๋ค.) ์๋ pug ํ ํ๋ฆฟ์ผ๋ก ์ฐ์ธ ๊ตฌ๋ฌธ์ด๊ณ
์ ์ฌ์ดํธ์์ pug <-> html ๊ฐ์ ๋ณํ์ด ๊ฐ๋ฅํ๋ค.
์ผ๋จ ์ ๊ฒฝ์จ์ผํ๋ ๋ถ๋ถ์ ์ํฐํค๋ฅผ ๋๋ ์ ๋ ๋ฒํผ์ด ํด๋ฆญ๋ ๊ฒ๊ณผ ๋์ผํ ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํค๋ ๊ฒ์ด๋ค.
[์๋ฐ์คํฌ๋ฆฝํธ ๋ถ๋ถ]
1 2 3 4 5 6 7 8 9 10 11 | script. document.getElementById('chatUser').addEventListener('keydown',function(event){ if(event.keyCode ==13){ event.preventDefault(); document.getElementById('chatPost').click(); } }); document.querySelector('.chatsend').addEventListener('click',function(){ document.getElementById('chatBot').value += '\n๋ : '+document.getElementById('chatUser').value; }); | cs |
๋ณด๋ฉด ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ๋ textarea๋ถ๋ถ์์ keydown ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ์ ๋, ๊ทธ๋ฆฌ๊ณ ๊ทธ key๊ฐ 13๋ฒ (enterํค) ์ผ ๋
๋ฐ๋ก ์๋์๋ querySelector์ ํตํด ์ฒ์์ ๋ง๋ค์ด์ฃผ์๋ button์ด ํด๋ฆญ๋๋ ์ด๋ฒคํธ๋ฅผ ์คํ์ํค๋ ๊ณผ์ ์ด๋ค.
์ฑํ ์ฐฝ์ ๋ด์ฉ์ด ์ง์์ง๋ฉด ์๋๋ฏ๋ก ๊ธฐ์กด ์ฑํ ์ฐฝ์์ ๋ํ๊ธฐ๋ฅผ ํ์ฌ ๊ธฐ์กด ์ฑํ ๋ด์ฉ๋ ์์ด์ง์ง ์๊ณ ์๋ก ์์ฑํ๋ ์ฑํ ๋ด์ฉ๋
์ค๋ฐ๊ฟ์ ํํ๋ก ๋ค์ด๊ฐ๋ ์ฝ๋์ด๋ค.
๋งจ ์์ ์งค๋ฐฉ์ฒ๋ผ ์ฑ๋ด์ด ์๋ตํ๋ ํํ๋ก ํ๋ ค๋ฉด ๋ฒํผ click ์ด๋ฒคํธ์๋ค๊ฐ ์ถ๊ฐ์ ์ผ๋ก ajaxํต์ function์ ์ถ๊ฐ์ ์ผ๋ก ์์ฑํด์ฃผ๋ฉด
์ฌ์ฉ์์ ์ฑํ ์ ์๋ตํ ์ ์๋ ํํ๋ก ๋ง๋ค ์ ์๋ค.
'javascript > web' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
textarea์ tabํค ์ ์ฉ (0) | 2018.05.04 |
---|---|
javascript textarea ์ค๋ฐ๊ฟ์ฒ๋ฆฌ (0) | 2018.04.12 |
- Total
- Today
- Yesterday
- node.js
- backend-framework
- sequelize
- nestjs/cli
- ์๊ณ ๋ฆฌ์ฆ
- Promise bulk
- nestjs typeorm
- foreignkey
- NestJS
- typeorm ์ฐ๊ฒฐ
- android
- nestjs module
- Spring
- Promise error
- nestjs project
- DeferredResult
- typeorm
- @nestjs/config
- nestjs config
- JavaScript
- docker mysql
- ๋น๋๊ธฐ ์์ฒญ
- Request_Limit_Exceeded
- ๊ธฐ์์ฒญAPI
- nestjs directory
- nestjs configService
- node.js backend
- Spring Async
- nestjs doc
- ํ๋ก๊ทธ๋๋จธ์ค
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |