2010-01-29 4 views
38

jQuery를 사용하여 텍스트 영역에 줄 바꿈 문자로 끝나는 문자열을 추가하려고합니다. 그러나 다른 개행 토큰은 Firefox3.5 및 IE8에서 다른 동작을 보여 주므로 두 브라우저 모두에서 작동하는 무언가를 사용할 방법을 찾지 못하는 것 같습니다. 나는에 대한 정보를 본 적이 FF에서가 아니라 IE jQuery textarea 개행 동작 추가

  • <br/><pre></pre> 태그 중 하나
  • 를 사용 \r\n 작업 IE에서하지만 FF

  • 없음 행운의

    • \n 작품 IE innerHTML 문제가 있지만 jQuery에서이 문제에 최선의 방법으로 접근하는 방법을 정확히 모르겠습니다. 어떤 도움을 주셔서 감사합니다!

  • 답변

    73

    회원님이 텍스트 영역의 내용을 설정하지만, 당신이 jQuery를 val 방법을 사용하는 경우, \n (IE8 포함) 파이어 폭스와 IE에서 지속적으로 작동하는 방법을 확인하십시오

    기존 내용
    및 줄 바꿈있는 경우 :

    var txt = $("textarea#idhere"); 
    txt.val(txt.val() + "\nSomething here\n\nAgain"); 
    

    표시 할 텍스트 영역을 일으킴. 여기


    뭔가 다시

    당신은 FF와 IE8에서 작동 여기 데모를 볼 수 있습니다 Demo를 | Source

    +0

    감사합니다. append()와 비교할 때 이것이 얼마나 뛰어난 지 알고 싶습니까? – Suan

    +0

    놀랍게도'val()'을 사용하면'textarea.empty()'가 작동하지 않습니다. ('append()'를 사용했을 때 작동했습니다.) http://jsbin.com/unali/3/edit으로 돌아가서 볼 수 있습니다. 정말 깔끔한 도구 btw! – Suan

    +1

    @Suan이면 속성을 설정하고 DOM을 어지럽히는 대신 '.append()'보다 빠릅니다. 또한 텍스트 영역을 비우기 위해'.val ('')'를 호출하면됩니다. "old school JS"에서는 다음과 같이 textarea 값을 가져 오거나 설정할 것입니다 : var txt = document.getElementById ('idhere'); txt.value + = "\ nSomething \ n \ nAgain"; 'DOM 요소와 속성을 사용하는 방법은 무엇입니까? –