드롭 다운 목록에서 값을 선택하고를 눌러 편집기에 텍스트를 추가 할 수있는 페이지에 PrimeFaces (2.2.1) 편집기가 있습니다. 버튼이 텍스트에 추가되도록 지정합니다. 나는 다음과 같은 자바 스크립트를 사용하여 편집기에 텍스트를 추가 할 수 있습니다 값이 변경 될 때JavaScript에서 PrimeFaces 편집기 구성 요소를 새로 고치는 방법
document.getElementById('form:editor').value = document.getElementById('form:editor').value + 'NEW TEXT!';
그러나, inputTextarea 달리 PrimeFaces 편집기 구성 요소는 자동으로 새로 고쳐지지 않습니다. 브라우저의 새로 고침 버튼을 누르거나 편집기의 소스보기 버튼을 눌러 추가 된 텍스트를 표시해야합니다. 편집기에서 값을 변경 한 후 새로 고치려면 자바 스크립트에서 할 수있는 것이 있습니까?
'actionListener'를 사용하여 서버 쪽의 텍스트를 업데이트하지 않는 이유는 무엇입니까? –
사실, commandButton을 누르기 만하면 Backing 빈의 값이 Editor의 현재 값으로 업데이트되고 버튼의 동작으로 텍스트를 추가 할 수 있습니다. 이 기술의 문제점은 PrimeFaces Editor가 자체적으로 새로 고치는 데 사용하는 코드가 결함이 있다는 것입니다. 원래 구성 요소의 텍스트 영역에 자체의 새로운 복사본이 렌더링되어 Ajax를 사용하지 못하게됩니다. 해결책은 Ajax를 피하고 단순히 서버쪽에 텍스트를 추가 한 후 전체 페이지를 새로 고치는 것이 었습니다. –