1
두 종류의 라디오 버튼이 있습니다.자바 스크립트에 의한 텍스트 영역 검증
확인 SMS를 버튼을 누른 텍스트 영역의 최대 길이는 90 바이트
을 설정하면체크 LMS 버튼, 다음 testarea의 최대 길이는 2000 바이트
를 설정하고 우리는 내가 'totalWordLimit'에서 텍스트 영역에 텍스트를 넣어 얼마나 많은 확인할 수있는 경우 내가 사본 & 붙여 넣기하여 많은 텍스트를 넣을 경우
하지만이 문제
는, 텍스트 영역이 비활성화 될
그리고 라디오 버튼을 변경할 때 카운팅 넘버가 초기화되지 않습니다.
이 코드에서 수정해야 할 사항은 무엇입니까?
<script type="text/javascript">
var setTotalNumberOfWordCounter = "90";
function displayWordCounter(){
var getTextValue = document.smsForm.msg.value; // Get input textarea value
var getTextLength = getTextValue.length; // Get length of input textarea value
var one_char = "";
var rbyte = 0;
var rlen = 0;
for(var i=0; i<getTextLength; i++){
\t one_char = getTextValue.charAt(i);
\t if(escape(one_char).length > 4){
\t rbyte += 2; // special language(2Bytes)
\t }else{
\t rbyte++; // 1Byte
\t }
\t if(rbyte <= setTotalNumberOfWordCounter){
\t rlen = i+1; //return text count
\t }
}
if(rbyte > setTotalNumberOfWordCounter){ //compare this length with total count
getTextValue = getTextValue.substring(0,setTotalNumberOfWordCounter);
document.smsForm.msg.value =getTextValue;
return false;
}
\t document.smsForm.totalWordLimit.value = (setTotalNumberOfWordCounter-rbyte);
\t var tt = document.getElementById("Textarea");
\t
\t if(document.smsForm.totalWordLimit.value === "0"){ \t \t \t
\t \t tt.value = tt.value.substring(0, tt.value.length-1);
\t }
}
</script>
<script type="text/javascript">
function ShowHide() {
var Textarea = document.getElementById("Textarea");
if(document.getElementById('sms').checked) {
\t setTotalNumberOfWordCounter = "90";
}else if(document.getElementById('lms').checked) {
\t \t setTotalNumberOfWordCounter = "2000";
}
}
</script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="radio" name="sms" id="sms" onclick="ShowHide()" value="ss" checked>SMS
<input type="radio" name="lms" id="lms" onclick="ShowHide()" value="ll"> LMS
<textarea name="msg" class="main_txt_area" id="Textarea" onkeydown="return displayWordCounter();" cols="40" rows="10" ></textarea>
\t \t \t \t \t \t \t \t \t
<script type="text/javascript">
\t \t \t \t document.write("<div class='total_count'>total remaining Charatctor: <input type='text' class='show_count' name='totalWordLimit' size=4 readonly value="+setTotalNumberOfWordCounter+"></div>");
</script>
감사를 onpaste 기능을보십시오! 하지만 maxlength 함수를 사용할 수 없습니다. bcz 다른 국가 언어 (1 텍스트 = 2 바이트)를 사용하고 있습니다. – user2458645