를 사용할 때 내가 가지고 탈출하지 문자를 이스케이프, 비교하지 않습니다. 그리고 내가 수행 할 경우 var text = "Raphaël\nkicks\nbutt!"
이스케이프되고 텍스트가 줄 바꿈으로 표시됩니다.자바 스크립트 문자열 jQuery.val() FUNC
입력 텍스트 값을 줄 바꿈으로 해석하도록하려면 어떻게해야합니까?
를 사용할 때 내가 가지고 탈출하지 문자를 이스케이프, 비교하지 않습니다. 그리고 내가 수행 할 경우 var text = "Raphaël\nkicks\nbutt!"
이스케이프되고 텍스트가 줄 바꿈으로 표시됩니다.자바 스크립트 문자열 jQuery.val() FUNC
입력 텍스트 값을 줄 바꿈으로 해석하도록하려면 어떻게해야합니까?
text
입력은 한 줄의 텍스트 만 허용하기 때문에 input[type=text]
요소는 줄 바꿈을 포함 할 수 없습니다. 개행 이스케이프 시퀀스가 일반 텍스트로 해석되고 있다고 생각합니다. 당신이 그것을 일치하는이 정확히 무엇을 val()
함수에서 반환되고 있기 때문에이에 일치하는 코드를 변경하고자한다면
: 만약 당신이 다른 방식에 맞게 원하는 경우 및
var stringText = "Raphaël\\nkicks\\nbutt!";
당신의
var inputText = $("#tzbox_txt").val().replace(/\\n/g,"\n");
var stringText = "Raphaël\nkicks\nbutt!";
inputText === stringText; // true
당신이 여러 줄 텍스트 내가 원하는 경우 input
요소를 테스트하기 전에 텍스트 값에 대체 당신이 할 수 '\n'
의텍스트 시퀀스를 포함 입력란이 아닌 텍스트 영역을 사용해야합니다. 텍스트 상자는 단 한 줄의 텍스트이므로 줄 바꿈은 필요 없습니다.
편집
: 당신이 줄 바꿈으로 시퀀스 \ n을 치료하고 싶은 경우는 검색을 수행하고 교체 :var s = "this\\nis\\na\\ntest";
var unescaped = s.replace("\\n", "\n");
은 당신이 문자열에있는 것은 N 다음에 리터럴 백 슬래시입니다. 이 검색 및 바꾸기는 리터럴 "\ n"을 개행 문자로 바꿉니다.
본질적인 문제는 입력 텍스트 상자에서 \ n이 백 슬래시 및 문자 n으로 해석되는 반면 var 문에서 \ n이 실제 줄 바꿈으로 변환된다는 것입니다.
이 일치 할 것입니다,하지만 내 질문은 줄 바꿈 텍스트 값에서 텍스트를 해석 할 수있는 방법이 있다면? – Sergey
@ mercury22 다른 방법으로 작동하도록 내 답변이 업데이트되었지만, 무엇이든지 * 문제를 해결하거나 해킹 할 수 있습니다. 'input' 엘리먼트는 원래의 의미로 여러 줄 텍스트를 포함 할 수 없습니다. –