2015-11-12 19 views
5

Tôi đang làm việc trên một ứng dụng ghi chú đơn giản và sử dụng trình soạn thảo GhostDown Markdown. Nó khá đẹp, tôi thích nó, nhưng tôi bị mắc kẹt cố gắng đặt giá trị của nó theo chương trình.Cách đặt giá trị của trình soạn thảo GhostDown Markdown

Tôi có thể nhận giá trị khá dễ dàng. $ ('Entry-markdown-content textarea'). Val()

Thiết tuy nhiên nó lại là chuyện khác ... :(

Nguyên mẫu của những gì tôi đang làm việc trên có thể được nhìn thấy ở http://potusnotes.com

+0

bạn đang ở trên này [ma-Markdown-Editor] (https: // github. com/timsayshey/Ghost-Markdown-Editor) phiên bản? – Blag

+0

@Blag không chắc chắn, nhưng nếu bạn cung cấp câu trả lời cho phiên bản mới nhất, tôi chắc chắn sẽ cập nhật nếu cần thiết – Serhiy

+0

về chi tiết hơn phiên bản (Vì tôi không tìm thấy trang web chính thức cho trình chỉnh sửa GhostDown Markdown) ; Tôi đã xem xét mã nguồn, nhưng nó hơi lộn xộn <_>; nó dường như có 'getMarkdown' và' getHtml', nhưng không có setter ...; và khi họ sử dụng một lớp phủ, nếu bạn không tìm thấy đúng phương pháp, nó là vô nghĩa – Blag

Trả lời

3

Đối với biên tập phần, ghost-Markdown-editor sử dụng CodeMirror editor. Vì vậy, để thiết lập giá trị theo chương trình, chúng tôi sẽ gọi dụ CodeMirror và làm

editor.setValue(txt); 

Nhưng làm thế nào để lấy ví dụ CM đó? Nó được tạo ra bởi các widget mà Ghost-Markdown-Editor đã được tạo ra. Xem jquery.ghostdown.js file:

$.widget("b4m.ghostDown", { 
    editor: null, 
    // ... 
    _create: function() { 
     // ... 
     this.editor = CodeMirror.fromTextArea(this.element.find('textarea')[0], { 
      mode: 'markdown', 
      tabMode: 'indent', 
      lineWrapping: true 
     }); 
    } 

} 

Như widget đã được thực hiện với nhà máy jQuery Widget, một trường hợp phụ tùng được giữ inside .data("plugin-name") yếu tố của đối tượng nó được sử dụng trên.

Như vậy chúng ta có thể truy cập vào dụ widget và thiết lập giá trị biên tập như thế này:

var ghostdown = $(".editor").data("b4m-ghostDown"); 
ghostdown.editor.setValue("# Hello, SO"); 

Hoặc đơn giản là

$(".editor").data("b4m-ghostDown").editor.setValue("# Hello, SO"); 
+1

Tuyệt vời, cảm ơn bạn nhiều, điều này chính xác những gì tôi đang tìm kiếm. Tôi nghĩ rằng nó sẽ là một cái gì đó như thế nhưng gặp khó khăn trong việc tìm ra nó. – Serhiy

+0

Vui vì tôi có thể giúp! May mắn thay nó là CodeMirror dưới mui xe. – Vaviloff

Các vấn đề liên quan