은 thinyMCE 인스턴스가
// initialize tinyMCE in page
tinyMCE.init({
mode: "textareas",
theme: "advanced"
});
아래 코드로 초기화 당신이 어딘가에 페이지에서 버튼의 어떤 종류가 있는지 추정 할 수 있습니다. 이 팁의 목적을 위해, 나는 어떤 ID도주지 않을 것이지만 당신은 그렇게 할 것입니다. 이제는 jQuery를 사용하여 이벤트 처리기를 AJAX 서버를 통해 호출하고 tinyMCE 편집기를 넣으려는 콘텐츠를 가져 오는 해당 단추에 쉽게 연결할 수 있습니다. 그러한 일을 할 수있는 코드는 어떻게 든 아래처럼 보일 것입니다.
$(function() {
$("button").bind("click", function() {
var ed = tinyMCE.get('content');
ed.setProgressState(1); // Show progress
$.getJSON('/page/12.json', { /* your data */
}, function(data) {
ed.setProgressState(0); // Hide progress
ed.setContent(data["body"]);
}
});
});
});
당신은 button.click 아약스에 그 응답으로 JSON을 반환 URL /page/12.json
를 호출합니다 볼 수 있습니다. 응답의 최소값은 다음과 같습니다.
{
title: "Page title",
body: "<html><head><title>Page title</title>......</html>"
}
서버의 응답을 처리하는 콜백으로 익명 함수를 첨부했습니다. 아약스 호출 전에 표시되는 진행 표시기를 숨 깁니다. JSON에 대해
은
JSON 자바 스크립트 객체 표기법의 단축된다. 자바 스크립트 코드입니다! 그래서 그것에 대해 혼동하지 마십시오. JSON을 사용하면 나중에 코드에서 사용할 수있는 속성을 가질 수있는 javascript 객체를 만들 수 있습니다.이 속성은 해당 객체가 보유하고있는 특정 데이터의 평화에 액세스 할 수 있습니다. 자신이 더 쉽게 데이터 구조로 볼 수 있습니다. 이 JSON이
var data = new Object();
data.title = "Page title";
data.body = "<html....";
또는
var data = {
title: "page title",
body: "<html...."
};
아래 예제를 손 모양으로 만들 수있는 방법을
어쨌든, 그것은 똑같은 일을 표시합니다.
JSON에 대해 자세히 알고 싶으면 브라우저에서 http://json.org을 가리 키십시오.
===== 대안 =====
JSON 솔루션에 대한 대안은 일반 HTML은 (귀하의 질문에서 당신이 뭔가가 있다고 가정 할 수 있습니다 서버 및 응답 그냥 비행기 아약스 호출을 수 이미 이렇게). 그래서 $.getJSON
을 호출하는 instad는 $.get(url, callback);
을 사용하여 같은 일을 할 수 있습니다. 내 대답의 상단에있는 코드가 크게 바뀌지는 않습니다. 응답으로 JSON을 얻는 대신 HTML 인 문자열을 얻습니다.
----------- BOTTOM 라인 ------- 내가 쉽게 다른 속성을 나중에 확장 할 수 있기 때문에 JSON을 선호하는, 그래서 나중에 더 고통스러운 코드 변경이없는
;)
만약 httpRequest 응답이 html로 바뀌었다면 당신은 thinyMCE를 다시 초기화해야만하는 것이 아니라 오히려 응답으로 JSON을 사용하고 textarea의 값을 업데이트 할 것을 제안합니다 –
이것에 대해 자세히 설명해 주시겠습니까? 나는 JSON을 사용한 적이 없지만 내 문제를 이해하는 것처럼 들린다. 어떻게 구현합니까? – user982853
대답에 추가 할 것입니다 –