[JQUERY] jQuery를 사용하여 텍스트 영역 및 디스플레이 라인 수의 행 수 제한
JQUERYjQuery를 사용하여 텍스트 영역 및 디스플레이 라인 수의 행 수 제한
해결법
-
1.HTML :
HTML :
<textarea id="countMe" cols="30" rows="5"></textarea> <div class="theCount">Lines used: <span id="linesUsed">0</span><div>
JS :
$(document).ready(function(){ var lines = 10; var linesUsed = $('#linesUsed'); $('#countMe').keydown(function(e) { newLines = $(this).val().split("\n").length; linesUsed.text(newLines); if(e.keyCode == 13 && newLines >= lines) { linesUsed.css('color', 'red'); return false; } else { linesUsed.css('color', ''); } }); });
깡깡이: http://jsfiddle.net/XNCkH/17/
-
2.여기에 약간의 개선 된 코드입니다. 앞의 예에서 당신이 원하는 것을 줄 이상의 텍스트를 붙여 넣을 수 있습니다.
여기에 약간의 개선 된 코드입니다. 앞의 예에서 당신이 원하는 것을 줄 이상의 텍스트를 붙여 넣을 수 있습니다.
HTML
<textarea data-max="10"></textarea> <div class="theCount">Lines used: <span id="linesUsed">0</span></div>
JS
jQuery('document').on('keyup change', 'textarea', function(e){ var maxLines = jQuery(this).attr('data-max'); newLines = $(this).val().split("\n").length; console.log($(this).val().split("\n")); if(newLines >= maxLines) { lines = $(this).val().split("\n").slice(0, maxLines); var newValue = lines.join("\n"); $(this).val(newValue); $("#linesUsed").html(newLines); return false; } });
-
3.훨씬 추한하지만, 어떻게 든 작업 예 텍스트 영역의 행을 지정
훨씬 추한하지만, 어떻게 든 작업 예 텍스트 영역의 행을 지정
<textarea rows="3"></textarea>
그리고 JS에서
$("textarea").on('keydown keypress keyup',function(e){ if(e.keyCode == 8 || e.keyCode == 46){ return true; } var maxRowCount = $(this).attr("rows") || 2; var lineCount = $(this).val().split('\n').length; if(e.keyCode == 13){ if(lineCount == maxRowCount){ return false; } } var jsElement = $(this)[0]; if(jsElement.clientHeight < jsElement.scrollHeight){ var text = $(this).val(); text= text.slice(0, -1); $(this).val(text); return false; } });
-
4.이 팬 아웃 및 바닐라 JS 이벤트 핸들러 가능한 흡기 반응 들어 :
이 팬 아웃 및 바닐라 JS 이벤트 핸들러 가능한 흡기 반응 들어 :
onChange={({ target: { value } }) => { const returnChar = /\n/gi const a = value.match(returnChar) const b = title.match(returnChar) if (value.length > 80 || (a && b && a.length > 1 && b.length === 1)) return dispatch(setState('title', value)) }}
이 예는 2 선 또는 총 80 개 문자 텍스트 영역을 제한한다.
이 새로운 값으로 갱신 된 상태 텍스트 영역에 그 값을 추가하는 것을 방지 반작용 방지한다.
from https://stackoverflow.com/questions/6501043/limit-number-of-lines-in-textarea-and-display-line-count-using-jquery by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 어떻게 자바 스크립트 / jQuery를 사용하여 URL에서 파일 이름을 당겨? (0) | 2020.10.29 |
---|---|
[JQUERY] 라이브 JQuery와 ()는 지원되지 않습니다. 내가 지금 무엇을 사용합니까? (0) | 2020.10.29 |
[JQUERY] 자바 스크립트 또는 jQuery를 사용하여 전자 메일을 보내는 방법 (0) | 2020.10.29 |
[JQUERY] 어떻게 서버에서 크로스 도메인 요청을 사용하려면? (0) | 2020.10.29 |
[JQUERY] 사용자가 자바 스크립트가 대화를 onbeforeunload에서 취소를 클릭하면 방법은 알고? (0) | 2020.10.29 |