我尝试创建一个自定义按钮来读取文本文件。这就是我到目前为止所得到的:
<textarea id="editor"></textarea>
<div id="testdiv"></div>
<pre id="testpre"></pre>
<textarea id="testta"></textarea>
<script>
tinymce.init({
selector: "textarea#editor",
toolbar : "txtupload",
setup: function(editor) {
var inp = $('<input id="uploader" type="file" accept="text/plain" style="display:none">');
$(editor.getElement()).parent().append(inp);
var fileInput = document.getElementById("uploader");
fileInput.addEventListener("change",function(e){
var file = fileInput.files[0];
var reader = new FileReader();
reader.onload = function(e) {
var txt = reader.result;
console.log("text is:\n" + txt);
editor.insertContent(txt);
document.getElementById("testdiv").textContent = txt;
document.getElementById("testpre").textContent = txt;
document.getElementById("testta").textContent = txt;
};
reader.readAsText(file);
});
editor.addButton("txtupload", {
text:"Text",
icon: false,
onclick: function(e) {
inp.trigger('click');
}
});
}
});
</script>
我的问题是我错过了 TinyMCE-textarea 中的换行符。我尝试更改“编辑器元素”(即我将 textarea 更改为 div 和 pre),但结果是相同的。作为说明,这里有一张图片说明了我的问题:tinymce_example
最佳答案
通过替换 \n
与 <br/>
可以解决这个问题。感谢Amir Popovich and faboolous
关于javascript - TinyMCE/文件读取器 : missing line breaks after reading text file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42365854/