2017-05-15 7 views
0

나는 laravel 5.4 앱에서 콘텐츠를 추가하기 위해 tinymce 플러그인을 포함 시켰습니다. 이것은 잘 작동하고 있습니다. 이 내용은 데이터베이스에 저장되고 html 표에 나열되며 편집하거나 삭제할 수 있습니다 (일반 crud)부트 스트랩 모달 안에 jimmery - 데이터를 tinymce에 넣습니다.

문제는 편집 버튼을 클릭하면 모달이 튀어 나오지만 주석이 들어있는 텍스트 영역은 다음과 같습니다. 공백. 내 console.log(response[i].content); 데이터베이스에서 데이터를 반환 그래서 내가 알고 그 조금 문제가 보인다

을하고있다

$(function(){ 
    $('.edit-subchapter').on('click', function(){ 
     var id = $(this).attr("value"); 
     $.get('subchapters/edit/'+id, function(response){ 
      for (var i in response) 
      { 
       console.log(response[i].content); 
       $("#formEdit #content").val(response[i].content); 
      } 
     },'json'); 
    }); 
}); 

var editor_config = { 
path_absolute : "{{URL::to('/')}}/", 
selector  : "textarea", 
plugins: [ 
    "advlist autolink lists link image charmap hr anchor pagebreak", 
    "insertdatetime media nonbreaking save table contextmenu directionality" 
], 
menubar: false, 
toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media" 
}; 

tinymce.init(editor_config); 

이상한 부분이있다 : 아래이 비트 또한 TinyMCE에 처리 기능을 처리 JQuery와는 텍스트 영역에 전달 될 때 : $("#formEdit #content").val(response[i].content);, 아무 것도 표시되지 않습니다. 그래서이게 내 이해의 가장 좋은 것인가? 무슨 문제가 될 수 있니?

답변

0

확인. 나는 그것을 알아. tinymce에 값을 설정할 때, 런타임시 tinymce가 텍스트 영역을 대체하므로 html 컨트롤을 사용하지 않습니다. 그래서 대신의

:

$("#formEdit #content").val(); 
:
tinymce.get('content').setContent(response[i].content); 

와 TinyMCE에의 값을 편집 한 후

, 대신, 그 값을 캡처하려면 :

$("#formEdit #content").val(response[i].content); 

우리가 이것을해야합니다

다음과 같이 표시됩니다 :

여기

일부 좋은 참고 사이트 :

http://archive.tinymce.com/wiki.php/TinyMCE3x:How-to_load/save_with_Ajax_in_TinyMCE이 비슷한 문제를 다른 사람에게 도움이 될 것입니다

https://forums.asp.net/t/1825756.aspx?Set+value+of+textarea+tinymce+in+jQuery+

희망